21 KiB
21 KiB
Current Execution Queue 2026-05-24
目的:把目前使用者要求的核心產品優化整理成單一執行佇列,避免 UI、比價、PPT、AI 觀測台與部署驗證漏項。 原則:準確率優先;不放寬 MOMO / PChome 全域比對門檻;正式部署不碰
momo-db;每個工作流都需有測試或正式 smoke。
0. 部署與驗證通道基準
- 確認
main、Gitea、正式環境版本一致。 - 修復或確認 SSH / Gitea / 188 hop 可用。
- 每次上線只 recreate
momo-app、scheduler、telegram-bot,禁止使用--remove-orphans,禁止影響momo-db。 - 2026-05-24 21:33 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.451。本輪只 recreatemomo-app;scheduler、telegram-bot未重建但保持 healthy;未使用--remove-orphans,未碰momo-db。Smoke 通過:主要頁面 HTTP 200、三個 app 容器 healthy、/api/pchome-review/queue可用於recoverable_low_score/legacy_low_scoreread-only 查詢,且 10 分鐘錯誤 log 未見 Traceback / ERROR。 - 2026-05-24 22:17 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.453。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、Gemini hard disabled 且 24 小時ai_calls無 Gemini provider、Ollama 順序維持 GCP-A → GCP-B → 111、/api/pchome-review/queue三個 status 查詢成功、rescore audit read-onlyselection_mode=latest_sku_only。 - 2026-05-24 22:55 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.455。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、EventRouterdecision_envelope直送不進 L1/L2 AI handler、Telegram 信封顯示標的 SKU 與 PChome 候選、Gemini hard disabled 且 24 小時ai_calls無 Gemini provider、Ollama 順序維持 GCP-A → GCP-B → 111、/api/pchome-review/queue?review_status=rescore_accepted查詢成功、10 分鐘錯誤 log 未見 Traceback / ERROR / CRITICAL。已執行--retract-variant-accepted,最新rescore_accepted_current中variant_selection_review殘留為 0。 - 2026-05-24 23:05 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.456。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、/api/pchome-review/queue?review_status=rescore_accepted每筆帶decision_envelope、guardrailcan_auto_execute=false、Gemini hard disabled 且 24 小時ai_calls無 Gemini provider、Ollama 順序維持 GCP-A → GCP-B → 111、5 分鐘三容器錯誤 log 未見 Traceback / ERROR / CRITICAL。 - 2026-05-24 23:17 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.457。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、Dashboard PChome 覆核頁顯示dashboard-review-envelope與 HITL、/api/pchome-review/queue?review_status=rescore_accepted仍帶decision_envelope且can_auto_execute=false、Excel flatten helper 輸出決策信封 ID/資料品質/自動執行允許/證據摘要、Gemini hard disabled 且 24 小時ai_calls無 Gemini provider、Ollama 順序維持 GCP-A → GCP-B → 111、5 分鐘三容器錯誤 log 未見 Traceback / ERROR / CRITICAL。 - 2026-05-24 23:30 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.458。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、summarize_review_decision_envelopes()產生 3 條 HITL 摘要且全數can_auto_execute=false、_fetch_competitor_summary()帶review_decision_text、/api/pchome-review/queue?review_status=rescore_accepted仍帶decision_envelope且can_auto_execute=false、核心頁面/daily_sales、/growth_analysis、/observability/ppt_audit_history、/market_intel/matches、/vendor-stockout/listHTTP 200;5 分鐘三容器錯誤 log 未見 Traceback / ERROR / CRITICAL,最新rescore_accepted_current中variant_selection_review殘留為 0。 - 2026-05-24 23:43 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.459。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、/api/pchome-review/queue?review_status=protected_existing_match輸出existing_match_conflict,建議動作為compare_existing_identity且can_auto_execute=false、Dashboard protected filter / daily / growth / PPT audit HTTP 200;5 分鐘三容器錯誤 log 未見 Traceback / ERROR / CRITICAL。 - 2026-05-24 23:59 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.460。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、scripts/check_sales_charts_runtime.js --base-url https://mo.wooo.work --routes /daily_sales,/growth_analysis通過,daily/growth 主要 canvas 均有 Chart.js instance、非零資料點與彩色像素;核心頁面/daily_sales、/growth_analysis、/observability/ppt_audit_history、PChome protected queue API HTTP 200;5 分鐘三容器錯誤 log 未見 Traceback / ERROR / CRITICAL。 - 2026-05-25 08:12 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.461。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、Dashboard template 已顯示「尚未搜尋」與「尚未進入 PChome 補抓」、Gemini hard disabled 且 24 小時ai_calls無 Gemini provider、Ollama 順序維持 GCP-A → GCP-B → 111;5 分鐘三容器錯誤 log 未見 Traceback / ERROR / IntegrityError。 - 2026-05-25 08:18 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.462。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、Dashboard / AI 中樞 / API / 前端 confirm 均改用「PChome 補抓產線 / 補抓未搜尋 / 未搜尋補抓」、Gemini hard disabled 且 24 小時ai_calls無 Gemini provider、Ollama 順序維持 GCP-A → GCP-B → 111;5 分鐘三容器錯誤 log 未見 Traceback / ERROR / IntegrityError。 - 2026-05-25 08:38 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.464。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、/、/?filter=pchome_review、/daily_sales、/growth_analysis、/observability/ppt_audit_history、PChome rescore queue API HTTP 200。DR.WU 三筆 SKU read-only rescore 全數gate_pass=3/3,--apply-accepted後 latest 狀態為rescore_accepted_current、best_match_score=1.0、price_basis=total_price;整體 latest counts 變為true_low_confidence=778、rescore_accepted_current=34。5 分鐘 log 未見 Traceback,但有既有[Embed] all hosts failed錯誤,需列入下一輪 Ollama embedding 健康檢查。 - 2026-05-25 10:04 CST 狀態:
main已推 Gitea 並部署到 188,正式/health為V10.465。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、/、/daily_sales、/growth_analysis、/observability/ppt_audit_history、PChome rescore queue API HTTP 200;容器內 routing smoke 證明 resolver 回 111 且allow_111_fallback=false時會改試 GCP-A/GCP-B,輸出tried=['http://34.143.170.20:11434','http://34.21.145.224:11434'];真實短 embedding 在 GCP-A/api/versiontimeout、GCP-B 200 情境下成功回 1024 維向量,耗時 4.59 秒。3 分鐘三容器錯誤 log 未見 Traceback / ERROR / CRITICAL。 - 2026-05-25 12:10 CST 狀態:已部署
V10.467到 188,正式/health為V10.467。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、/、/daily_sales、/growth_analysis、/observability/ppt_audit_history、PChome rescore queue API HTTP 200。Production pilot 將 9 筆 focused exact total-price SKU 追加為rescore_accepted_current,整體 latest counts 從true_low_confidence=802/rescore_accepted_current=38變為true_low_confidence=793/rescore_accepted_current=47;目標 SKU 的competitor_prices最新crawled_at仍停在 2026-05-22~2026-05-23,確認本輪未寫正式價差表。已知後續:GCP-A / GCP-B Ollama/api/version目前連線失敗,背景 embedding 正確沒有落 111,但 app/scheduler log 仍會出現[Embed] all 2 hosts failed,需另開 Ollama 健康處理。 - 2026-05-25 12:27 CST 狀態:已部署
V10.468到 188,正式/health為V10.468。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三個 app 容器 healthy、/、/daily_sales、/growth_analysis、/observability/ppt_audit_history、PChome review queue API/api/pchome-review/queueHTTP 200;容器內 mock smoke 證明背景 embedding 在 GCP-A / GCP-B 全失敗後會開啟 60 秒 failure circuit,第二筆不再重複打兩台 GCP,且不落 111。GCP 維運盤點:GCP-A22/11434refused;GCP-B22open 但現有 key publickey denied,部署 smoke 時 GCP-B11434已恢復 200、get_ollama_host()選到 GCP-B;111/api/version可用,但 111 仍不得承接背景bge-m3。 - 2026-05-25 12:05 CST 狀態:
main已部署到 188,正式/health為V10.467,待推 Gitea。兩段變更已合併驗證:V10.466 rescore duplicate 改看 latest-state,7 筆 SKU 最新 attempt 全為rescore_accepted_current,competitor_prices/competitor_price_history目標計數未變;V10.467 focused exact matcher 在容器內回exact / total_price / price_alert_exact。本輪 recreatemomo-app、scheduler、telegram-bot;未使用--remove-orphans,未碰momo-db。Smoke 通過:三容器 healthy、PChome rescore queue API HTTP 200、Gemini 24 小時無 provider 紀錄、Ollama env 順序維持 GCP-A → GCP-B → 111、3 分鐘三容器 log 未見 Traceback / ERROR / CRITICAL / IntegrityError。
1. MOMO / PChome 核心比價準確率
- 查正式
competitor_match_attempts最新狀態分布與高量低信心 cohort。 - 以小批次 pilot 處理
recoverable_low_score,優先品線:- DASHING DIVA
- aroma / diffuser / essential oil
- lip / cosmetic variant
- private-care / body-care
- 2026-05-24 22:10 CST 起,PChome rescore audit 預設對齊 review queue 最新狀態:先取每個 SKU 最新 attempt,再套用 status / reason 篩選;歷史候選回看需明確使用
--include-historical-candidates。 - 2026-05-24 22:20 CST 起,matcher replay 先套用 V10.453 安全修正:
EX8型號不視為x8入數,香氛固體凝膠一側泛稱、一側具體香味/No. 款式走 veto;Herbacin 小甘菊護手霜 20ml brandless 可作窄範圍安全回收。 - 2026-05-24 22:42 CST 起,feeder / rescore audit 套用 V10.454 安全閘門:
identity_review/manual_review/variant_selection_review的近門檻候選只能留在覆核,不能由 replay、refresh 或accepted_current入隊語意自動寫正式 PChome 價差。 - 2026-05-24 22:48 CST 已執行 production rescore 入隊:745 筆
true_low_confidence中先有 2 筆通過舊 gate;V10.454 gate 補上variant_selection_review排除後,SKU8884618KATE 多款任選唇膏已退回最新true_low_confidence,最終只保留 SKU10922465Herbacin 小甘菊護手霜 20ml 為rescore_accepted_current人工覆核 attempt;正式價格表未寫入,Dashboard / competitor intel cache 已清除。 - 2026-05-24 22:44 CST 起,rescore audit 補
--retract-variant-accepted工具化退回路徑;若最新rescore_accepted_current仍帶variant_selection_review,只追加true_low_confidenceattempt,不刪歷史、不寫正式價格表。 - 只新增窄範圍、可解釋 matcher 規則。
- 保留
MIN_MATCH_SCORE、identity_veto、既有正式候選覆寫保護。 - 驗收:
matched有增加、目標low_score下降、needs_review不異常上升、無明顯跨色號/跨款式/跨劑型錯配。
2. 商品列表與人工覆核閉環
- 商品列表不得再大量顯示籠統「待對比」。
- 將狀態拆成:尚未搜尋、價格過期待刷新、近門檻可救回、證據不足、既有強配對保護、已排除、需單位價比較、找不到同款。
- 每筆覆核要顯示候選 PChome 商品、候選價、match score、診斷原因、下一步動作。
- 人工採用 / 否決 / 單位價 / 補搜尋必須能回寫 review queue,並影響 feeder 後續行為。
- 2026-05-25 00:15 CST 起,PChome 補抓操作入口同步收斂為「PChome 補抓產線 / 補抓未搜尋 / 未搜尋補抓」,包含 Dashboard、AI 中樞、前端 confirm 與 API 回覆,不再讓操作入口殘留籠統「待比對」。
- 2026-05-25 00:06 CST 起,尚未進入 PChome 搜尋/補抓的商品列表文案改為「尚未搜尋」與「尚未進入 PChome 補抓」,不再顯示籠統「待比對」,避免和低信心待人工覆核混淆。
- 2026-05-24 23:40 CST 起,
protected_existing_match的 reviewdecision_envelope會解析existing_match_conflict,列出既有正式候選、新候選、雙方 score 與 delta;這類案件仍不可自動覆蓋正式價差,但人工覆核、Agent 與 PPT 不再只看到籠統「既有保護」。
2.1 近門檻 / 高信心待審 matcher 補強
- 2026-05-25 08:30 CST 起,rescore audit 支援
--skurepeatable 精準篩選;production pilot 可只指定 3-10 個 SKU 執行 read-only audit 或--apply-accepted,避免寬範圍掃描誤把不同 cohort 混在同一次驗證。 - 2026-05-25 08:25 CST 起,
DR.WU / DR WU / DRWU / 達爾膚視為同一品牌 alias;正式樣本中的 DR.WU 玻尿酸保濕精華乳 50ML、2入組與杏仁酸亮白煥膚精華 18% 30ML 2入組,在不調整全域門檻下可由 brandless identity review 回到 exact total-price lane。 - 2026-05-25 08:36 CST production pilot:SKU
10362820、10653216、10653329已從true_low_confidencematerialize 為rescore_accepted_current,只進人工覆核隊列,不寫competitor_prices。 - 2026-05-25 11:55 CST 起,rescore audit duplicate 判斷只看最新 attempt;若歷史已有 accepted 但後續 crawler 又追加低信心列,可重新 materialize 成最新
rescore_accepted_current。Production pilot 已將 SKU14756069、11159042、13842560、8394210、15192547、10509765、10603780入人工覆核隊列;正式competitor_prices/competitor_price_history未寫入或改變。 - 2026-05-25 12:20 CST 起,matcher 新增
focused_exact_total_price_safe窄範圍通道;目前只覆蓋 3W CLINIC 粉底液 2入、花美水凝膠 3支、The Ordinary 咖啡因 EGCG 30ml、KUSSEN 屁屁膏 3入、Bone 擴香禮盒、1990 融燭燈白色款與 CANMAKE 淚袋盤等已確認同款樣本。這讓高信心exact/manual_review能轉為exact/total_price供 rescore pilot 入人工覆核;DASHING DIVA、唇彩、香味、色號/款式敏感商品仍不放行。 - 2026-05-25 12:25 CST production pilot:SKU
6101639、10074951、7760902、TP00074980000005、14774766、10142589、10262470、10262471、11308520已從true_low_confidencematerialize 為rescore_accepted_current,全數exact/total_price/price_alert_exact且理由含focused_exact_total_price_safe。SKU6101784因「即期品」商業條件不同,刻意保留在true_low_confidence,不納入本輪自動入隊。
3. 12 Agent 決策信封整合
decision_envelope已接到 NemoTron 價格告警與人工覆核,下一步要讓 OpenClaw、ElephantAlpha、PPT QA 與 review queue 共用同一份 evidence contract。- 2026-05-24 22:44 CST 起,EventRouter 對已附
decision_envelope的事件直接渲染證據模板,不呼叫 L1/L2 AI handler;這讓 NemoTron 價格告警、人工覆核與後續 Agent 共用同一份 SKU / PChome / evidence / guardrails,不再二次生成摘要。 - 2026-05-24 23:00 CST 起,
fetch_competitor_review_queue()、fetch_competitor_review_queue_page()與/api/pchome-review/queue每筆候選也帶decision_envelope,包含 SKU/PChome 標的、match evidence、人工下一步、預期價差與不可自動寫正式價差的 guardrails;Dashboard、Agent、Telegram、PPT 後續共用此 contract。 - 2026-05-24 23:15 CST 起,Dashboard 覆核卡與 PChome 覆核 Excel 匯出也顯示/輸出信封摘要、資料品質、HITL、trace、自動執行阻擋原因與證據摘要;下載檔不得丟失 guardrails。
- 2026-05-24 23:25 CST 起,OpenClaw 週報/日報/月報與 competitor PPT 使用
summarize_review_decision_envelopes()的同一份 HITL 信封摘要,不再手寫 attempt_status 統計或自行翻譯覆核狀態。 - 2026-05-24 23:40 CST 起,
compare_existing_identity成為protected_existing_match的明確建議動作;Agent 只能提示「比較既有正式候選與新候選」,不得因新候選分數較高自動寫正式價差。 - 2026-05-24 23:55 CST 起,ElephantAlpha
resource_optimization/ea_escalation都必須帶 deterministicdecision_envelope;Telegram 按鈕 callback 使用decision_id,證據只允許 action_plans、CPU 實測、hygiene 與 trigger trace。 - 告警不得再輸出空泛「預期效益」;必須帶資料品質、證據來源、HITL 邊界與 trace id。
- Agent 建議只能輔助排序與分析,不得繞過 matcher / feeder / review service 寫正式價格。
3.1 Ollama / Embedding 健康
- 2026-05-25 08:48 CST 起,
OllamaService.generate_embedding(..., allow_111_fallback=False)若 resolver 回 111,會強制改試尚未嘗試的 GCP-A/GCP-B,不再讓背景 embedding 在 111 disabled 情境直接退出或只試單台 GCP-B;111 仍不承接背景bge-m3。 - 2026-05-25 12:27 CST 起,背景 embedding 在 GCP-A/GCP-B 全掛時開啟短暫 failure circuit;這是降載保護,不代表 primary 已恢復。部署 smoke 時 GCP-B
/api/version已恢復 200,下一步仍需恢復 GCP-A Ollama 或更新 110 的可用 SSH/GCP 操作憑證。
4. 業績分析資料與圖表修復
- 修正即時業績匯入
snapshot_date text = date類型錯誤。 /daily_sales、/growth_analysis圖表不得空白;需保留原本圖表並升級成更專業的呈現。- 圖表需通過 runtime nonblank canvas 檢查與手機版 responsive。
- daily/growth/PPT 必須共用
competitor_intel_repository的比價資料出口,避免價差方向或統計口徑分裂。 - 2026-05-24 23:55 CST 起,daily/growth chart 判斷不再只看 series 長度;若序列全 0,顯示 chart-empty 狀態而不是畫只有座標軸的假圖。正式 smoke 需跑
scripts/check_sales_charts_runtime.js確認主要 canvas 非空。
5. PPT 視覺 QA 與自動簡報產線
- 每日、每週、每月、每季、半年、年度簡報需依排程產出。
- 每次產出與視覺 QA 結果必須完整寫入 DB。
/observability/ppt_audit_history必須清楚顯示 runtime 狀態、產出狀態、視覺 QA、問題追蹤與可預覽檔案。- PPTX / PDF 預覽需可站內直接開啟,不能只下載。
6. 外部 BI / 協作入口
/metabase不可空白,需顯示可診斷 bridge 狀態或可用替代入口。/grist/ 資料協作連結不得連到其他專案站。- 側欄與 topbar 外部工具入口要統一走 momo-pro bridge route。
7. AI 觀測台與全站 UI/UX
- 10 個 AI 觀測台頁面必須符合新版字體、字級、暖墨色、焦糖 accent、點陣視覺與 responsive 規範。
- 全站主要頁面需通過 desktop / mobile overflow guard。
- 表格與圖表只允許在局部容器橫向滾動,不可造成整頁無限延伸。
8. 效能與可觀測性
- 持續降低
/daily_sales、/growth_analysis、商品看板、PChome queue、PPT audit 首屏 TTFB。 - 避免 worker cold start 重查重算;必要時使用共享快取與指紋失效。
- 111 fallback 只作最後救急;持續監控 GCP-A / GCP-B / 111 用量與 circuit breaker。
9. 每輪收尾
- Focused tests → full pytest 或合理範圍回歸 → production smoke。
- 更新 SOT / memory / TODO。
- 推 Gitea,正式部署,確認
/health版本。 - 記錄未完成與下一輪入口。