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

This commit is contained in:
Your Name
2026-05-25 11:06:12 +08:00
parent 3ca834c31d
commit 814a44d539

View File

@@ -1,3 +1,96 @@
## 2026-05-25T170 Callback Evidence Capture 狀態顯示
**背景**
- T167-T169 已保存 callback-time KM owner-review、AwoooP status-chain、MCP / Execution / Source snapshot。
- production 仍有較早的 Telegram 詳情 / 歷史 callback rows 沒有 persisted snapshot前端原本只是不顯示 snapshotOperator 容易誤判成頁面壞掉或 DB 沒資料。
- 本階段只補 read-only capture status不反向改舊 Telegram 訊息、不寫 incident / KM / auto-repair 狀態、不新增通知頻率。
**完成變更**
- AwoooP callback replies API 每筆新增 `evidence_capture_status`
- schema`callback_evidence_capture_status_v1`
- `status``captured` / `partial` / `not_captured` / `observed`
- `captured` / `missing` 明列是否已保存 `awooop_status_chain``km_stale_completion_summary`
- `reason` 區分 `ok``partial_snapshot_rollout_transition``legacy_callback_before_snapshot_rollout``callback_reply_delivery_failed_snapshot_missing`
- `next_action` 對舊 row 指向「重新按 Telegram 詳情 / 歷史,產生新版 callback snapshot」。
- Runs 頁 `TG Callback Evidence` card 新增「Evidence Capture 狀態」:
- 已捕捉 / 部分捕捉 / 未捕捉 badge。
- 顯示已捕捉項、尚缺項、下一步與 rollout marker。
- zh-TW / en i18n 已補齊,未新增硬編 UI 文案。
**本地驗證**
```text
python3 -m py_compile apps/api/src/services/platform_operator_service.py apps/api/src/api/v1/platform/operator_runs.py apps/api/tests/test_awooop_operator_timeline_labels.py
python3 -m json.tool apps/web/messages/zh-TW.json
python3 -m json.tool apps/web/messages/en.json
DATABASE_URL='postgresql+asyncpg://test:test@localhost:5432/test?ssl=disable' /Users/ogt/.pyenv/versions/3.11.7/bin/pytest apps/api/tests/test_awooop_operator_timeline_labels.py -q
-> 46 passed
/Users/ogt/.pyenv/versions/3.11.7/bin/ruff check --select F,E9 apps/api/src/services/platform_operator_service.py apps/api/src/api/v1/platform/operator_runs.py apps/api/tests/test_awooop_operator_timeline_labels.py
pnpm --filter @awoooi/web exec tsc --noEmit --incremental false
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
Local Playwright smoke with mocked API:
-> Evidence Capture 狀態 visible
-> 未捕捉 visible
-> 下一步「重新按 Telegram 詳情 / 歷史」visible
```
**production deploy / smoke**
```text
Code commit:
04684eef feat(awooop): show callback evidence capture status
Deploy marker:
3ca834c3 chore(cd): deploy 04684ee [skip ci]
Gitea Actions:
3056 / run_number 2097 CD -> success
job 4055 tests -> success
job 4056 build-and-deploy -> success
job 4057 post-deploy-checks -> success
3057 / run_number 2098 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
-> old rows return evidence_capture_status.status=not_captured
-> missing=[awooop_status_chain, km_stale_completion_summary]
-> next_action=press_telegram_detail_or_history_after_rollout
Production web smoke:
HEAD https://awoooi.wooo.work/zh-TW/awooop/runs?project_id=awoooi
-> HTTP 200
Production Playwright:
-> Evidence Capture 狀態 count=2
-> 未捕捉 visible
-> 重新按 Telegram 詳情 / 歷史 visible
-> page errors=0
Production health:
GET https://awoooi.wooo.work/api/v1/health
-> status=healthy
-> environment=prod
-> mock_mode=false
-> api/postgresql/redis/ollama/openclaw/signoz=up
```
**目前整體進度**
- AwoooP 告警可觀測鏈:約 99.1%。
- 低風險自動修復閉環:約 95.5%。
- 前端 AI 自動化管理介面同步:約 96.1%。
- Telegram detail/history 可解釋性:約 95.3%。
- Callback evidence / DB 回放性:約 95%。
- MCP / 自建 MCP 使用可視性:約 88%。
- Sentry / SigNoz source correlation 可視性:約 88%。
- Ansible / PlayBook 決策可視性:約 84%。
- KM owner-review / completion 可治理鏈:約 84%。
- 完整 AI 自動化管理產品化:約 92.9%。
## 2026-05-25T169 Callback evidence 補齊 MCP / Source / Execution snapshot
**背景**