docs(logbook): record callback owner review work items [skip ci]
This commit is contained in:
@@ -1,3 +1,99 @@
|
||||
## 2026-05-25|T164 Callback owner-review gap 轉為可追蹤 Work Item
|
||||
|
||||
**背景**:
|
||||
|
||||
- T163 已讓 `/api/v1/platform/runs/callback-replies` 與 `/awooop/runs` 顯示每筆 Telegram detail/history callback 的 KM Owner Review 摘要。
|
||||
- 但 `status=no_related_owner_review` 仍只是頁面提示,operator 不能從 Work Items 看到「這筆 callback 尚未連到 KM owner-review completion item」的待辦缺口。
|
||||
- 本階段目標是把這種缺口轉為 read-only generated Work Item:不寫 KM、不寫 governance audit、不改 incident/run 狀態,只讓流程位置可追蹤。
|
||||
|
||||
**完成變更**:
|
||||
|
||||
- `km_stale_completion_summary.work_item` 新增 `km_stale_callback_owner_review_work_item_v1`:
|
||||
- 只在 `no_related_owner_review` 且有 incident_id 時生成。
|
||||
- `target_href` 指回 Runs callback evidence。
|
||||
- `work_item_href` 指向 Work Items 聚焦該 generated work item。
|
||||
- guardrail 明確保留 `writes_on_read=false`、`batch_writes_allowed=false`、`manual_review_required=true`。
|
||||
- `/zh-TW/awooop/work-items` 新增 `T164 Callback 未匹配 KM Owner Review 工作項`:
|
||||
- 從 production callback evidence API 讀取,不新增 DB row。
|
||||
- 顯示 open gap count、latest incident/action、completion queue counts、next step。
|
||||
- 點擊工作項會回到 Runs callback evidence,讓 operator 看得到原始 callback 與 KM owner-review 狀態。
|
||||
- `/zh-TW/awooop/runs` 的 KM Owner Review 區塊新增「開啟工作項」:
|
||||
- 從 Runs 反向導到 Work Items 聚焦 generated work item。
|
||||
- 避免 operator 只停在 detail/history reply,不知道後續該在哪裡追。
|
||||
|
||||
**本地驗證**:
|
||||
|
||||
```text
|
||||
python3 -m py_compile apps/api/src/services/platform_operator_service.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/platform_operator_service.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_awooop_operator_timeline_labels.py apps/api/tests/test_ai_governance_endpoints.py -q
|
||||
-> 105 passed
|
||||
pnpm --filter @awoooi/web exec tsc --noEmit --incremental false
|
||||
pnpm --dir apps/web exec next lint --file 'src/app/[locale]/awooop/work-items/page.tsx' --file 'src/app/[locale]/awooop/runs/page.tsx'
|
||||
-> exit 0, only pre-existing i18n literal warnings in runs page
|
||||
python3 -m json.tool apps/web/messages/zh-TW.json
|
||||
python3 -m json.tool apps/web/messages/en.json
|
||||
git diff --check
|
||||
```
|
||||
|
||||
**production deploy / smoke**:
|
||||
|
||||
```text
|
||||
Code commits:
|
||||
15666092 feat(governance): surface callback owner review work items
|
||||
73aad413 fix(governance): link callback work item back to queue
|
||||
|
||||
Deploy markers:
|
||||
390b13e8 chore(cd): deploy 1566609 [skip ci]
|
||||
ea75ea46 chore(cd): deploy 73aad41 [skip ci]
|
||||
|
||||
Gitea Actions:
|
||||
3027 / run_number 2082 Code Review -> success
|
||||
3026 / run_number 2081 CD -> success
|
||||
3999 tests -> success
|
||||
4000 build-and-deploy -> success
|
||||
4001 post-deploy-checks -> success
|
||||
3031 / run_number 2084 Code Review -> success
|
||||
3030 / run_number 2083 CD -> success
|
||||
4005 tests -> success
|
||||
4006 build-and-deploy -> success
|
||||
4007 post-deploy-checks -> success
|
||||
|
||||
Production API:
|
||||
GET https://awoooi.wooo.work/api/v1/platform/runs/callback-replies?project_id=awoooi&incident_id=INC-20260524-16109D&per_page=2
|
||||
-> total=2, items=2
|
||||
-> km_stale_completion_summary.status=no_related_owner_review
|
||||
-> work_item.status=open
|
||||
-> target_href=/awooop/runs?project_id=awoooi&incident_id=INC-20260524-16109D&callback_reply_status=sent
|
||||
-> work_item_href=/awooop/work-items?project_id=awoooi&work_item_id=km-callback-owner-review%3Aawoooi%3AINC-20260524-16109D&incident_id=INC-20260524-16109D
|
||||
-> writes_on_read=false, batch_writes_allowed=false
|
||||
|
||||
Production frontend:
|
||||
https://awoooi.wooo.work/zh-TW/awooop/work-items?project_id=awoooi&work_item_id=km-callback-owner-review%3Aawoooi%3AINC-20260524-16109D&incident_id=INC-20260524-16109D
|
||||
-> Callback 未匹配 KM Owner Review 工作項 visible
|
||||
-> Callback owner-review 缺口 visible
|
||||
-> Completion queue visible
|
||||
-> Runs evidence link visible
|
||||
-> screenshot: /tmp/t164-work-items-callback-owner-review-production-final.png
|
||||
|
||||
https://awoooi.wooo.work/zh-TW/awooop/runs?project_id=awoooi&incident_id=INC-20260524-16109D&callback_reply_status=sent
|
||||
-> TG Callback Evidence visible
|
||||
-> KM Owner Review visible
|
||||
-> no_related owner-review state visible
|
||||
-> 開啟工作項 links to /zh-TW/awooop/work-items?project_id=awoooi&work_item_id=km-callback-owner-review%3Aawoooi%3AINC-20260524-16109D&incident_id=INC-20260524-16109D
|
||||
-> screenshot: /tmp/t164-runs-callback-owner-review-link-production-final.png
|
||||
```
|
||||
|
||||
**目前整體進度**:
|
||||
|
||||
- AwoooP 告警可觀測鏈:約 98%。
|
||||
- 低風險自動修復閉環:約 95%。
|
||||
- 前端 AI 自動化管理介面同步:約 94%。
|
||||
- CI/CD 通知與部署證據鏈:約 99%。
|
||||
- 治理告警可讀性 / 可處置性:約 92%。
|
||||
- KM owner-review / completion 可治理鏈:約 78%。
|
||||
- 完整 AI 自動化管理產品化:約 90.8%。
|
||||
|
||||
## 2026-05-25|T163 KM completion state in Telegram callback evidence
|
||||
|
||||
**背景**:
|
||||
|
||||
Reference in New Issue
Block a user