docs(logbook): record callback source snapshots [skip ci]

This commit is contained in:
Your Name
2026-05-25 10:38:43 +08:00
parent c573fd42dd
commit 1c8ebdf283

View File

@@ -1,3 +1,86 @@
## 2026-05-25T169 Callback evidence 補齊 MCP / Source / Execution snapshot
**背景**
- T168 已保存 callback-time AwoooP status chain但仍偏重「修復階段」。
- 使用者要求能在前端與 Telegram evidence 中清楚判斷Sentry / SigNoz 是否被匹配、MCP / 自建 MCP 是否真的被使用、Ansible / PlayBook 是否有被納入判斷。
- 本階段只擴充 read-only callback evidence snapshot不新增 Telegram 推播頻率、不改 callback mutation、不寫 incident / KM 狀態。
**完成變更**
- `awooop_status_chain_callback_reply_snapshot_v1` 補齊:
- `mcp.gateway`total / success / failed / blocked / first-class / legacy bridge / policy enforced / stage。
- `mcp.top_tools`:保留當下 gateway / legacy MCP top tools 與失敗摘要。
- `execution`latest executor / action / playbook ids / playbook paths。
- `execution.ansible`considered / record_total / candidate_count / latest playbook / check_mode / candidate playbooks。
- `source_refs`inbound/outbound totals、alert / Sentry / SigNoz / fingerprint refs。
- `source_refs.correlation`read-only source provider correlation summary含 Sentry / SigNoz direct / candidate / applied link counts。
- Telegram detail/history 送出 callback reply 前,會 read-only 查 source correlation查詢失敗只記 warning不會影響 truth-chain / callback reply。
- Runs 頁 `TG Callback Evidence` 的 callback-time status chain 下方新增 compact 摘要:
- MCPtotal / success / failed / blocked / top tool。
- Executionexecutor / playbook / Ansible considered / candidate count。
- Sourcestatus / direct / candidate / applied / Sentry-SigNoz provider summary。
**本地驗證**
```text
python3 -m py_compile apps/api/src/services/telegram_gateway.py apps/api/tests/test_telegram_message_templates.py
python3 -m json.tool apps/web/messages/zh-TW.json >/dev/null
python3 -m json.tool apps/web/messages/en.json >/dev/null
pnpm --filter @awoooi/web exec tsc --noEmit --incremental false
DATABASE_URL='postgresql+asyncpg://test:test@localhost:5432/test?ssl=disable' /Users/ogt/.pyenv/versions/3.11.7/bin/pytest apps/api/tests/test_telegram_message_templates.py apps/api/tests/test_awooop_operator_timeline_labels.py -q
-> 92 passed
/Users/ogt/.pyenv/versions/3.11.7/bin/ruff check --select F,E9 apps/api/src/services/telegram_gateway.py apps/api/tests/test_telegram_message_templates.py
git diff --check
pnpm --filter @awoooi/web exec eslint 'src/app/[locale]/awooop/runs/page.tsx'
-> 0 errors, 26 pre-existing i18n warnings in this file
```
**production deploy / smoke**
```text
Code commit:
dd1c5138 feat(telegram): persist callback evidence source snapshots
Deploy marker:
c573fd42 chore(cd): deploy dd1c513 [skip ci]
Gitea Actions:
3053 / run_number 2095 CD -> success
job 0 tests -> success
job 1 build-and-deploy -> success
job 2 post-deploy-checks -> success
3054 / run_number 2096 Code Review -> success
Production API regression:
GET https://awoooi.wooo.work/api/v1/platform/runs/callback-replies?project_id=awoooi&per_page=3
-> total=2, items=2
-> old rows safely return persisted_awooop_status_chain=null
-> schema remains backward-compatible for new source/MCP/execution fields
Production web smoke:
HEAD https://awoooi.wooo.work/zh-TW/awooop/runs?project_id=awoooi
-> HTTP 200
Production health:
GET https://awoooi.wooo.work/api/v1/health
-> status=healthy
-> api/postgresql/redis/ollama=up
```
**目前整體進度**
- AwoooP 告警可觀測鏈:約 99%。
- 低風險自動修復閉環:約 95.5%。
- 前端 AI 自動化管理介面同步:約 95.8%。
- Telegram detail/history 可解釋性:約 95%。
- Callback evidence / DB 回放性:約 94%。
- MCP / 自建 MCP 使用可視性:約 88%。
- Sentry / SigNoz source correlation 可視性:約 88%。
- Ansible / PlayBook 決策可視性:約 84%。
- KM owner-review / completion 可治理鏈:約 84%。
- 完整 AI 自動化管理產品化:約 92.7%。
## 2026-05-25 | GCP-A Ollama 不可達runtime 暫切 GCP-B
- GCP-A `34.143.170.20` 從本機、110、GCP-B 均不可達ping 100% lossTCP `22/80/443/11434` timeout`ssh gcp-a` timeout。