diff --git a/docs/memory/claude_inventory_validation_20260513.md b/docs/memory/claude_inventory_validation_20260513.md index 27ce2a2..8e637e9 100644 --- a/docs/memory/claude_inventory_validation_20260513.md +++ b/docs/memory/claude_inventory_validation_20260513.md @@ -64,6 +64,8 @@ - app.py/BP 路由雙寫已完成收斂:active `@app.route` 為 0,`USE_MODULAR_ROUTES` 與舊 routes registry shim 已不存在;`tests/test_phase3f_cleanup_contracts.py::test_app_py_stays_blueprint_only_for_routes` 會防止 route decorator 回到 `app.py`。 - AI 觀測台 badge/chip 對比規範已補強:`.momo-observability-mode` 內的 badge、pill 與 nested surface 會改走亮底、8px radius、無負字距、可換行且不再殘留低對比 legacy dark-hero 樣式;CSS mirror、`quick_review.sh --observability-ui`、`quick_review.sh --observability-qa --skip-production` 均通過。 - AI 觀測台 rendered visual contract 已入庫:`scripts/check_observability_visual_contract.sh` 會用 Playwright 檢查 10 頁 × desktop/tablet/mobile 的 title typography、surface radius/background、chip contrast、hero height 與水平 overflow;V10.116 main 版 local server 驗證 30 項 PASS。測未部署變更時必須帶 localhost `--base-url`,打 production fail 可能只是正式站尚未部署該版。 +- V10.117 已把 AI 觀測台背景語彙收斂為 tokenized dot-matrix:合約會要求 hero/signal/panel surface 的 computed `background-image` 是 `radial-gradient`,並拒絕 legacy `linear-gradient` / `background-image: none` 回流;終端 dot-matrix layer 必須留在 CSS 檔尾以贏過舊 neutralizer。 +- `/observability/host_health` 在 SQLite local QA 下已略過 `host_health_probes` persistence,避免 BIGINT autoincrement drift 造成 warning;正式 Postgres session 仍維持 probe history 寫入,`tests/test_admin_observability_routes.py::test_host_health_skips_probe_persistence_on_sqlite` 會守住。 - Telegram `momo:eig:` callback 已在 `routes/openclaw_bot_routes.py` 與 `services/telegram_bot_service.py` 實作並有 webhook 測試覆蓋,不是未實作缺口。 - Telegram `date_*` / `goal_*` 不是死 callback handler:按鈕先送 `await:*` 進入輸入等待狀態,使用者下一則文字才由 pending action 消費;`tests/test_openclaw_bot_menu_keyboards.py` 與 `tests/test_openclaw_bot_routes_webhook.py` 已覆蓋。 - `services/ai_automation_smoke_service.py` 不是死 service:`run_scheduler.py` 每日 09:10 掛 `run_ai_smoke_daily_summary_task()`,該 task 會呼叫 `send_smoke_daily_summary()`;`tests/test_ai_automation_smoke_service.py` 與 `tests/test_ai_automation_metrics.py` 已覆蓋。 @@ -194,3 +196,6 @@ - `b7ba54a` 更新 ADR-017 模組化現況 - `b6e6573` 收斂觀測台手機字體與視覺契約 - `c10e6a4` 記錄觀測台視覺契約守門 +- `5a21e23` 略過 SQLite host probe 寫入 +- `f947469` 融合觀測台點陣視覺語彙 +- `60b73e1` 固定觀測台點陣層覆蓋順序 diff --git a/docs/memory/frontend_v3_handoff_20260512.md b/docs/memory/frontend_v3_handoff_20260512.md index b49020f..9fad11b 100644 --- a/docs/memory/frontend_v3_handoff_20260512.md +++ b/docs/memory/frontend_v3_handoff_20260512.md @@ -104,8 +104,15 @@ - `./scripts/quick_review.sh --observability-visual` - `scripts/check_observability_suite.sh` 在 production smoke 後有第 4 步;`--skip-production` 時會明確 skip rendered visual contract。 - 觀測台手機密度與商業情報頁 title/chip 對比已補強,`templates/admin/business_intel.html` 的 H1 已有 `biz-title` class,V10.116 main 版的 local rendered contract 已覆蓋 10 頁 × desktop/tablet/mobile 30 項 PASS。 +- 本機 SQLite visual QA 曾因 `/observability/host_health` GET 頁嘗試寫 `host_health_probes` 而噴 BIGINT autoincrement warning;main 已改為 SQLite session 下略過 probe persistence,正式 Postgres 路徑仍保留寫入。 - 本段只記錄 main repo 推版與本機 QA;未在本段宣稱正式環境已完成 V10.116 部署驗證。 +## 2026-05-13 V10.117 main 追更 + +- AI 觀測台已改成 tokenized dot-matrix 背景語彙,`scripts/check_observability_visual_contract.js` 會檢查 hero/signal/panel surface 的 rendered `background-image` 必須是 `radial-gradient`,並防止 legacy `linear-gradient` 或 `background-image: none` 回流。 +- `static/css/observability-system.css` 檔尾保留 terminal dot-matrix layer;不要把它移回 v3.4/v3.5 neutralizer 之前,否則 computed style 會被後段 `background-image: none !important` 覆蓋。 +- 本機 `http://127.0.0.1:5017` 已重跑 rendered visual contract,10 頁 × desktop/tablet/mobile 共 30 項 PASS。 + ## 重要使用提醒 - 不要用 `file://.../templates/*.html` 預覽 Jinja 模板。它需要 Flask route 注入 `url_for()`、context 與 session。