All checks were successful
CD Pipeline / deploy (push) Successful in 3m6s
Wave 3.2:市場情報週報 — 把 mcp_collector 所有外部 API 彙整成一份內部簡報。 generate_market_intel_weekly_ppt — 7 頁 - P1 封面:本週重點/市場機會/風險警訊三句話(從 AI 自動抽) - P2 節慶日曆 + 季節情境(雙卡) - P3 電商新聞 + Google 熱搜(雙卡) - P4 Dcard 口碑 + YouTube 爆紅(雙卡) - P5 天氣 + 匯率(雙卡,影響消費行為) - P6 AI 整合洞察與行動建議 - P7 附錄 外部資料來源(mcp_collector_service / mcp_context_service): - mcp_collector.get_holiday_context() 節慶日曆(靜態) - mcp_collector.get_seasonal_context() 季節情境(靜態) - get_ecommerce_news() 電商產業新聞(Gemini Grounding) - get_taiwan_trends() Google 台灣熱搜 - get_dcard_trends() Dcard 熱門討論 - get_youtube_trending() YouTube 爆紅商品 - get_taiwan_weather() 台灣天氣 - get_twbank_exchange_rates() 台幣匯率 每個外部 API 用 _safe() wrapper,失敗時填預設文字「(本次擷取失敗或無資料)」。 _ppt_ai_analysis 加 is_market_intel 分支 - 角色:行銷情報分析師 + BU 主管 - 結構:本週市場大事 / 消費者情緒口碑 / 競爭態勢差異化 / SMART 三層 / 外部風險預警 - max_tokens 2000 路由: - /ppt market_intel 本週情報週報(自動對齊週一) Telegram 按鈕:「🌐 市場情報週報」 bump TEMPLATE_VERSIONS['market_intel'] = v3.1.0 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
路由模組說明
app.py 直接註冊所有 Flask Blueprint;USE_MODULAR_ROUTES、register_blueprints()、
MODULAR_ENDPOINTS 與 duplicate cleanup 開關已在 ADR-017 Phase 3f-1 移除。
啟動防線
app.py 會在啟動時檢查 app.url_map,同一組 (URL, HTTP methods) 不允許被兩個 endpoint
重複註冊;若發現衝突會直接 SystemExit。
模組清單
| 模組 | 說明 | 主要路由 |
|---|---|---|
dashboard_routes.py |
商品看板首頁 | / |
sales_routes.py |
業績分析與 ABC 明細 | /sales_analysis, /growth_analysis, /abc_analysis/detail, /api/sales_analysis/* |
system_public_routes.py |
無 prefix 公開系統頁與監控 | /health, /metrics, /ai_automation_smoke, /api/ai-automation/smoke*, /settings, /system_settings, /logs, /api/logs, /api/backup |
system_routes.py |
內部系統維護 API | /api/system/* |
edm_routes.py |
EDM 與節慶儀表板 | /edm, /festival |
monthly_routes.py |
月結分析 | /monthly_summary_analysis, /api/monthly_summary_data |
daily_sales_routes.py |
當日業績 | /daily_sales, /daily_sales/export* |
api_routes.py |
通用任務與查詢 API | /api/run_task, /api/history/* |
export_routes.py |
匯出功能 | /api/export/* |
import_routes.py |
匯入功能 | /api/import_excel, /api/import/monthly_summary |
新增 route 時請優先放入對應 Blueprint,並用本機 app.url_map duplicate check 驗證。
若 route 內開始出現大量資料處理、SQL、AI prompt 或外部 API 呼叫,請依
docs/guides/modularization_governance.md 抽到 services/ 或 utils/,不要讓 Blueprint 變成新巨檔。