diff --git a/docs/LOGBOOK.md b/docs/LOGBOOK.md index cebf6c367..ff09520c5 100644 --- a/docs/LOGBOOK.md +++ b/docs/LOGBOOK.md @@ -1,3 +1,34 @@ +## 2026-06-18|監控告警訊息專業化:主機 / runner raw dump 必須轉 AI 自動化事件卡 + +**背景**:統帥指出 Telegram / SRE 戰情室收到的主機告警仍把 CPU、容器 root Node.js 行程、完整工具路徑、套件 JSON、外部檢查 endpoint 與 raw process dump 直接貼出。這種訊息不可讀、不可處置,也會擴大資訊外洩面;AWOOOI / IwoooS 作為 AI 自動化產品,監控告警必須先轉成可判讀、可分流、可驗證、可回寫的事件卡,而不是把底層 log 丟給值班者。 + +**完成內容**: +- `TelegramGateway.send_alert_notification()` 與 `send_text()` 新增最後出口正規化:偵測 host / runner resource raw dump 後一律強制改成 HTML 版 `ai_automation_alert_card_v1`,不受呼叫端原本 `parse_mode` 影響。 +- Host / runner 卡片改成 `P1/P2/P3 主機資源壓力` 版型,第一屏固定顯示 CPU、load 視覺條、容器 root 進程數、影響判讀、AI lane、`candidate_only / runtime_write_gate=0`、Top evidence、建議下一步與禁止事項。 +- 新增 Prisma / package install 壓力分流:`runner_prisma_generate_resource_pressure`。`pnpm prisma generate`、`prisma/build/index.js` 與 Prisma CLI child 只保留 `PID + CPU + Prisma generate root` 摘要,不外送 `/workspace/...`、`/opt/hostedtoolcache/...`、`node_modules`、外部 URL、JSON payload 或整段 `ps aux`。 +- `docs/awooop/TELEGRAM-INCIDENT-NOTIFICATION-MODEL.md` 補上正式卡片版型與不合格規則;`docs/runbooks/HOST-RUNAWAY-PROCESS-AIOPS-PLAYBOOK.md` 補上 Prisma / package install lane;`docs/ARCHITECTURE_MEMORY.md` 固定 AWOOOI / AwoooP / IwoooS 是 AI 自動化產品,不是監控頁或告警轉發器。 + +**驗證**: +- `DATABASE_URL='postgresql+asyncpg://test:test@127.0.0.1:5432/awoooi_test' pytest tests/test_telegram_message_templates.py -q`:`62 passed`。 +- `python -m py_compile src/services/telegram_gateway.py`:通過。 +- `DOC_SECRET_SANITY_OK scanned_files=3`。 +- `SECURITY_MIRROR_PROGRESS_GUARD_OK`。 +- `git diff --check`:通過。 +- Gitea `code-review.yaml #3178`:成功。 +- Gitea `cd.yaml #3177`:成功;有效部署 code commit `27143fb0`,包含 formatter commit `5d76ac11`。 +- Deploy marker:`42c08ece chore(cd): deploy 27143fb [skip ci]`。 +- Production health:`https://awoooi.wooo.work/api/v1/health` 回 `healthy`;PostgreSQL、Redis、OpenClaw、SignOz、Ollama GCP-A / GCP-B / local route 均為 `up`。 +- Gitea `ansible-lint.yml #3176`:截至本紀錄仍為 `Waiting`;它不作本次 CD / code-review 成功依據,也不得假寫成成功。 + +**完成度同步**: +- Host / runner 監控告警訊息專業化 formatter:`100%`,production 已部署。 +- Prisma / package install raw dump 脫敏 regression:`100%`。 +- Telegram 事件包規範與 PlayBook 同步:`100%`。 +- 全域所有告警類型專業化覆蓋:約 `66%`;下一步要把 Wazuh / Kali / Nginx drift / backup / provider freshness / supply-chain 類訊號也全數套用同一事件卡契約。 +- Telegram live send canary、Gateway queue write、receipt production write、host process kill、Docker / systemd restart、Nginx reload、firewall change、Wazuh active response、Kali active scan:仍 `0 / false`。 + +**邊界**:本段沒有實發 Telegram、沒有讀取 token、沒有改 receiver / chat route、沒有改審批按鈕語義、沒有 SSH、沒有 host write、沒有 kill process、沒有重啟服務、沒有 reload Nginx、沒有改 firewall、沒有 active scan。此完成只代表訊息出口、文件契約、測試與正式部署已完成;真實處置仍必須走 owner approval、maintenance window、evidence ref、rollback 與 post-check。 + ## 2026-06-18|治理頁核心自動化證據降級顯示正式驗證 **背景**:統帥指出 KM、PlayBook、腳本、排程、Verifier 與告警 / 報表沉澱如果頁面看不到、告警訊息看不到,就等同產品沒有完成。正式站實測發現 `/zh-TW/governance?tab=automation-inventory` 雖然 `agent-report-truth-actionability-review` API 已回 `P2-403K`,但治理頁仍可能因大量讀模型同步未完成而停在骨架屏,導致已存在的報表真相、告警有效性、工作項隊列與 AwoooI SRE 戰情室路由證據不可見。