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

This commit is contained in:
Your Name
2026-05-25 10:10:38 +08:00
parent 9aba9974e6
commit 01284d1e4f

View File

@@ -1,3 +1,81 @@
## 2026-05-25T168 Callback AwoooP status-chain snapshot 持久化
**背景**
- T167 已保存 KM owner-review callback-time snapshot。
- 但 Telegram 詳情 / 歷史 callback 的 DB evidence 仍缺少「當下 AwoooP 狀態鏈」:日後回放只能看到 live truth-chain無法確認當時 AI 自動化是已驗證、自動修復待驗證、只讀試跑、被阻擋,還是人工處理中。
- 本階段只新增 read-only status-chain snapshot不改 Telegram 送訊頻率、不改 callback mutation、不改 incident/KM 狀態。
**完成變更**
- Telegram detail/history callback reply 的 outbound source envelope 新增 `awooop_status_chain` compact snapshot
- schema`awooop_status_chain_callback_reply_snapshot_v1`
- 保存當下 `current_stage``stage_status``verdict``repair_state``verification``needs_human``next_step`
- 保存 evidence countsauto-repair、operation、MCP gateway、KM、ADR-100 remediation。
- 保存當下 `latest_route` 與 writes flagsincident / auto-repair。
- 保存 blockers讓 Telegram 歷史回放可看出當時卡點。
- AwoooP callback replies API 新增 `persisted_awooop_status_chain`
- Runs 頁 `TG Callback Evidence` card 新增「Callback 當下 AwoooP 狀態鏈」,並沿用既有 `AwoooPStatusChainPanel` compact 呈現。
**本地驗證**
```text
python3 -m py_compile apps/api/src/services/telegram_gateway.py apps/api/src/services/platform_operator_service.py apps/api/src/api/v1/platform/operator_runs.py apps/api/tests/test_telegram_message_templates.py apps/api/tests/test_awooop_operator_timeline_labels.py
/Users/ogt/.pyenv/versions/3.11.7/bin/ruff check --select F,E9 apps/api/src/services/telegram_gateway.py apps/api/src/services/platform_operator_service.py apps/api/src/api/v1/platform/operator_runs.py apps/api/tests/test_telegram_message_templates.py apps/api/tests/test_awooop_operator_timeline_labels.py
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
pnpm --filter @awoooi/web exec tsc --noEmit --incremental false
python3 -m json.tool apps/web/messages/zh-TW.json >/dev/null
python3 -m json.tool apps/web/messages/en.json >/dev/null
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:
daf9d4b0 feat(telegram): persist callback status chain snapshots
Deploy marker:
9aba9974 chore(cd): deploy daf9d4b [skip ci]
Gitea Actions:
3045 / run_number 2091 CD -> success
job 0 tests -> success
job 1 build-and-deploy -> success
job 2 post-deploy-checks -> success
3046 / run_number 2092 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
-> response includes persisted_awooop_status_chain field
-> old rows safely return persisted_awooop_status_chain=null
Production web smoke:
HEAD https://awoooi.wooo.work/zh-TW/awooop/runs?project_id=awoooi
-> HTTP 200
```
**production health note**
- `GET /api/v1/health` 仍回 `status=degraded``ollama_gcp_a=down timeout`routing/fallback 顯示 `ollama` degraded with `fallback active: ollama_gcp_b`
- API / PostgreSQL / Redis 正常;本階段未改 AI provider routing。
**目前整體進度**
- AwoooP 告警可觀測鏈:約 98.8%。
- 低風險自動修復閉環:約 95.2%。
- 前端 AI 自動化管理介面同步:約 95.4%。
- Telegram detail/history 可解釋性:約 94.5%。
- Callback evidence / DB 回放性:約 91%。
- CI/CD 通知與部署證據鏈:約 99%。
- 治理告警可讀性 / 可處置性:約 93.8%。
- KM owner-review / completion 可治理鏈:約 83.5%。
- 完整 AI 自動化管理產品化:約 92.1%。
## 2026-05-25T167 Callback owner-review evidence snapshot 持久化
**背景**