This commit is contained in:
@@ -245,7 +245,7 @@ SKU/商品ID = find_col(['商品ID', 'Product ID', 'ID', 'i_code', 'Item Code'
|
||||
| `match_score` | NUMERIC(4,3) | 商品身份比對分數(0~1),< 0.76 不寫入正式快取 |
|
||||
| `tags` | JSONB | 語意標籤,如 `["on_sale","discount_20pct"]` |
|
||||
| `crawled_at` | TIMESTAMP | 爬取時間 |
|
||||
| `expires_at` | TIMESTAMP | TTL = crawled_at + 6h,過期後 Hermes 忽略 |
|
||||
| `expires_at` | TIMESTAMP | TTL = crawled_at + 48h(可由 `PCHOME_FEEDER_TTL_HOURS` 調整),過期後 Hermes 忽略;UI 身份覆蓋率不因價格 TTL 過期歸零 |
|
||||
|
||||
**UNIQUE**: `(sku, source)` — 同一 SKU+來源只有一筆,ON CONFLICT UPDATE
|
||||
|
||||
@@ -336,7 +336,7 @@ LIMIT 300
|
||||
↓ 搜尋 PChome(search_products)
|
||||
↓ 商品身份比對(marketplace_product_matcher.py)
|
||||
↓ 提取語意標籤
|
||||
↓ UPSERT competitor_prices(TTL 6h)
|
||||
↓ UPSERT competitor_prices(預設 TTL 48h)
|
||||
↓
|
||||
[HermesAnalystService.fetch_candidates()] ←← AI Pipeline 消費端
|
||||
↓ LEFT JOIN competitor_prices(零網路等待)
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
## 📅 詳細更新日誌 (考古存檔)
|
||||
|
||||
### 2026-05-31:Webcrumbs 共用 UI Runtime 與市場情報 writer approval
|
||||
- **V10.518 PChome 覆蓋率與新鮮度拆分**: 修正比價監控總覽把價格 TTL 過期誤算成「未覆蓋」的產品口徑,`fetch_competitor_coverage()` 現在分開回報 `valid_matches`(identity 覆蓋)、`fresh_matches`(價格新鮮)、`stale_matches` 與 `fresh_match_rate`;首頁、業績與成長頁同步顯示身份覆蓋與價格新鮮。PChome 快取 TTL 預設由 6h 改 48h,並將每日 expired identity refresh / retryable / unmatched limits 改為環境變數,預設提升到 1200 / 240 / 240,避免已建立 identity 的商品因刷新量不足被長期視為無覆蓋。
|
||||
- **V10.517 PChome near-threshold 比對 hotfix**: 新增 Lab52 齒妍堂汪汪隊嬰幼兒牙刷 2 入組 focused exact identity,讓真同款可進 `exact / total_price / price_alert_exact`;同時補 Les nez 香氛融蠟燈款式選擇 gap 與 Time Leisure 香薰蠟燭香味 gap,將不同款式 / 單側香味候選留在覆核或 veto,不讓它們進 recoverable 自動回刷。測試鎖住 Dashing Diva、Pavaruni、Recipe Box、Lactacyd 與 feeder recoverable 邊界。
|
||||
- **V10.516 Webcrumbs host data 授權回歸測試**: 新增 Flask runtime 測試,直接重現 `DISABLE_LOGIN=true` 下 `/api/webcrumbs/marketplace-host-data` 必須回 401 且不得組裝真實 host data;同時鎖住 `X-Internal-Key` 與登入 session 可取得敏感 seed、未授權 `/webcrumbs` 只注入 `auth_required` 空狀態,避免後續改動再讓 public 診斷頁洩漏 MOMO/PChome SKU 與價差。
|
||||
- **V10.515 Webcrumbs host data 硬性授權**: 發現正式環境一般 `@login_required` 可能因 `DISABLE_LOGIN=true` 放行後,為 `/api/webcrumbs/marketplace-host-data` 與 `/webcrumbs` inline seed 加上獨立授權判斷;只有登入 session 或 `X-Internal-Key` 可取得真實 SKU/價差,未授權時只回 `auth_required` 空狀態,避免 public runtime 診斷頁洩漏正式比價資料。
|
||||
|
||||
Reference in New Issue
Block a user