V10.518 拆分比價覆蓋與價格新鮮度
All checks were successful
CD Pipeline / deploy (push) Successful in 1m9s

This commit is contained in:
OoO
2026-05-31 23:16:06 +08:00
parent c91d20f26b
commit 11896c24dc
15 changed files with 90 additions and 29 deletions

View File

@@ -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
↓ 搜尋 PChomesearch_products
↓ 商品身份比對marketplace_product_matcher.py
↓ 提取語意標籤
↓ UPSERT competitor_pricesTTL 6h
↓ UPSERT competitor_prices預設 TTL 48h
[HermesAnalystService.fetch_candidates()] ←← AI Pipeline 消費端
↓ LEFT JOIN competitor_prices零網路等待

View File

@@ -13,6 +13,7 @@
## 📅 詳細更新日誌 (考古存檔)
### 2026-05-31Webcrumbs 共用 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 診斷頁洩漏正式比價資料。