- 新增 docs/adr/ADR-016:daily_sales cache TTL → TTL+DB fingerprint,棄用 N-POST broadcast hack(命中率 9.4%),引述 debugger/web-researcher/migration-engineer 三方共識;殘留 HIGH-2(app.py 43 處 _SALES_PROCESSED_CACHE)列管 - docs/memory/history_logs.md 新增 4/28-29 條目:app.py -10.8%、4 個改進版死碼揭發、 cache 機制重構、hook 9 PoC 強化、12 Agent 並行作戰實踐 - CLAUDE.md 補上 ADR-015/016 索引項 Memory(個人 auto-memory,未入 repo)同步: - feedback_flask_blueprint_shadow.md(first-registered wins) - feedback_cache_invalidation_pattern.md(DB fingerprint vs N-POST) - feedback_agent_dispatch_order.md(critic 必須先於 fullstack) - feedback_cloud_vs_local_automation.md(LAN 專案禁雲端 routine) - project_phase3e_refactor_progress.md(11 commits 戰果)
4.0 KiB
4.0 KiB
EwoooC 專案歷史紀錄 (History Logs)
📌 重大里程碑
- 2026-04-18: 專案正式正名為 EwoooC,AI 治理架構 Phase 4 結案(V10.3)。
- 2026-02-13: WOOO AIOps SaaS 核心模組完成。
- 2026-01-24: 曾嘗試遷移至 K3s(後於 04-18 審計確認回歸 Docker Compose)。
- 2026-01-12: 專案啟動,MOMO 監控系統初版。
📅 詳細更新日誌 (考古存檔)
2026-04-28~29:Phase 3e 重構大戰 + daily_sales cache 隱形 bug 根除
- app.py 縮減 -10.8%: 7,386 → 6,590 行,11 commits 全綠零 502。
- 抽 Blueprint:
/api/categories→category_routes.py(8fce73b);/api/test_url+/brand_assets→misc_routes.py(e676840)。 - 揭發 4 個改進版死碼: refactor-specialist 28 條雙重 URL 等價性矩陣指出
/growth_analysis、/daily_sales、/api/export/excel/abc、/api/run_task在 routes/*.py 已重構但因 Flask first-registered-wins 規則被 app.py 同 URL@app.routeshadow 從未生效。本輪先啟用 daily_sales (8fefea0),餘三條待後續。 - daily_sales cache 機制重構 (ADR-016): 「匯入 15323 筆但業績頁面看不到」隱形 bug 根因 = gunicorn 4 worker 各持獨立 module-level dict。先嘗試 N-POST broadcast hack 命中率僅 9.4%(debugger + web-researcher + migration-engineer 三方共識);改用 DB fingerprint (
MAX(snapshot_date), COUNT(*)) 雙閘失效 (3971fd4),強一致無浪費。 - clear_cache endpoint 加
@login_required: 修 critic HIGH-3,外部 POST 無 auth 回 400(CSRF + login 雙重攔截)。 - hook 9 PoC 強化 (
136e65b): vuln-verifier 對.claude/hooks/momo-prod-guard.js跑 9 條 PoC 8 條繞過 → 補強 heredoc / writable CTE / multi-statement / pg_read_file / COPY FROM PROGRAM //run/secrets//proc/*/environ全擋。 - 12 Agent 並行作戰實踐: 8 完成 + 4 rate-limited;學到 critic 必須先於 fullstack-engineer 完成(feedback_agent_dispatch_order.md)。
- 殘留 HIGH-2 技術債: app.py 仍 43 處
_SALES_PROCESSED_CACHE(sales_analysis 等獨立 cache)待後續抽services/cache_manager.py。
2026-04-28:AI 引擎穩定性與 CI/CD 幽靈容器大規模修復
- 幽靈容器排除: 發現
docker-compose.yml漏掛載routes目錄,導致 Telegram Bot 長期執行舊代碼。 - 埠位衝突修復: 移除
depends_on: postgres以解決與 orphanmomo-db的 5432 埠位競爭問題。 - CI/CD 強化:
cd.yaml引入--no-cache與docker compose restart以應對快取損壞與容器識別問題。 - AI 備援優化: 放寬 Ollama 健康檢查至 10s,請求超時至 180s,修復 Gemini 429 速率限制與 MCP 404 報錯。
- 網站 502 修復: 手動恢復因容器重建中斷的 110-188 SSH 隧道。
2026-02-13:重開機服務修復與 Clawdbot 整合
- 更新
system_startup.shv2.0,移除 Harbor 相關邏輯。 - 重新設計 Monitor 首頁,移除不存在的服務連結。
- 實作 Ollama Server 端的
Clawdbot整合腳本。
2026-02-09:域名健康監控與服務修復
- 新增
domain-health-monitor.sh,每 5 分鐘自動巡檢。 - 修復 n8n Task Runner 403 錯誤。
2026-02-07:CI/CD Dashboard 與 Registry 遷移
- 完全移除 Harbor,改用輕量級 Docker Registry。
- 開發 CI/CD Dashboard 頁面 (
/cicd)。
2026-01-28:核心問題修復
- 502 Bad Gateway: 發現 Docker 網路棧故障,新增自動重啟機制。
- OOM 問題: 修復業績匯入進程因記憶體消耗過大被 SIGKILL 的問題。
- Ollama 監控: 實作 AI 服務器健康專項監控。
🛠️ 過往技術爭議與決策 (ADR 前身)
- 資料流向: 確立
daily_sales_snapshot為 SOT,同步至realtime_sales_monthly。 - 快取機制: 使用
FileLock解決 Gunicorn 多 Worker 重建快取競爭。 - 時區處理: 強制使用
Asia/Taipei並於 SQLite 存儲 naive datetime。
詳細原始紀錄請參閱 Git Commit History 或 110 主機備份目錄。