diff --git a/docs/LOGBOOK.md b/docs/LOGBOOK.md index f24fbb7aa..3229f7fb1 100644 --- a/docs/LOGBOOK.md +++ b/docs/LOGBOOK.md @@ -1,3 +1,97 @@ +## 2026-05-24|T158 KM stale owner-review inbox / per-item completion surface + +**觸發**: + +- T157 已把 10 筆 P0 stale KM 排入 `waiting_owner_review`,但前端只知道批次已 queued,operator 仍難以逐筆看「哪一筆待審、來源批次、優先序、下一步」。 +- 使用者要求已完成與正在推進的 AI 自動化工作必須同步呈現在前端,不能只靠 Telegram 片段文字判斷流程階段。 +- 本階段目標是做 owner review 工作台排序與逐筆完成入口;仍維持不批量自動寫 KM。 + +**修正**: + +- 新增 `GET /api/v1/ai/governance/km-stale-owner-reviews`: + - schema `km_stale_owner_review_inbox_v1`。 + - 依 `project_id`、`dispatch_status` 查詢 `hermes_km_stale_owner_review` dispatch。 + - 回傳 dispatch / governance event / KM entry / batch source / priority / stale days / refs / workflow stage / next action。 + - read-only:`writes_on_read=false`、`manual_review_required=true`。 +- AwoooP Work Items / AI 治理新增 `Owner review 工作台`: + - 顯示 pending owner review 總數與本頁筆數。 + - 依 P0/P1 與 priority score 排序。 + - 每張卡顯示 dispatch id、entry id、stale days、view count、priority score、workflow stage、batch dispatch。 + - 卡片可直接走 T156 的單筆 `乾跑完成` / `確認完成`,保持 fingerprint + owner approval 邊界。 +- 補 zh-TW / en i18n 與 API / frontend 型別。 + +**local verification**: + +```text +git diff --check -> OK +/Users/ogt/.pyenv/shims/ruff check apps/api/src/models/governance.py apps/api/src/services/governance_km_stale_review_service.py apps/api/src/api/v1/ai_governance.py apps/api/tests/test_ai_governance_endpoints.py -> OK +DATABASE_URL='postgresql+asyncpg://test:test@localhost/test' /Users/ogt/.pyenv/shims/pytest apps/api/tests/test_ai_governance_endpoints.py apps/api/tests/test_governance_agent.py apps/api/tests/test_hermes_kb_growth_worker.py apps/api/tests/test_governance_dispatcher.py -q + -> 103 passed +pnpm --filter @awoooi/web exec tsc --noEmit --incremental false -> OK +pnpm --dir apps/web exec next lint --file src/app/[locale]/awooop/work-items/page.tsx -> OK +``` + +**production deploy / smoke**: + +```text +code commit: +0c447acb feat(governance): surface stale km owner review inbox + +deploy marker: +63be59ef chore(cd): deploy 0c447ac [skip ci] + +Gitea Actions: +2987 CD -> success + tests 3928 -> success + build-and-deploy 3929 -> success + post-deploy-checks 3930 -> success +2988 AI Code Review -> success +2989 Type Sync Check -> success + +K8s: +awoooi-api image=.../api:0c447acb196f70e647ea9dcf8ab4aeeb6e08e34e ready=2/2 +awoooi-web image=.../web:0c447acb196f70e647ea9dcf8ab4aeeb6e08e34e ready=2/2 +awoooi-worker image=.../api:0c447acb196f70e647ea9dcf8ab4aeeb6e08e34e ready=1/1 + +owner-review inbox API: +schema_version=km_stale_owner_review_inbox_v1 +project_id=awoooi +dispatch_status=pending +total=10 +returned=10 +writes_on_read=false +manual_review_required=true +top items: + d754c205-9678-413c-a10e-3b8b4ee6f739 P0 score=275 stage=waiting_owner_review batch=4e2530b7-e3d2-4569-86e2-78f13a6e652d action=refresh_with_evidence + f648ab84-50dd-4f5d-bb5d-53cf20a2a42b P0 score=275 stage=waiting_owner_review batch=4e2530b7-e3d2-4569-86e2-78f13a6e652d action=refresh_with_evidence + b67665db-9332-409c-9bf4-9689a2416563 P0 score=275 stage=waiting_owner_review batch=4e2530b7-e3d2-4569-86e2-78f13a6e652d action=refresh_with_evidence + +frontend: +GET /zh-TW/awooop/work-items?project_id=awoooi -> 200 +Browser smoke: + hasCriticalError=false + hasAwoooP=true + hasNav=true + hasOwnerReviewInbox=true + ownerCards visible with waiting_owner_review and per-item completion actions + screenshot=/tmp/t158-work-items-owner-review-cards.png +``` + +**處置判讀**: + +- T158 把 T157 產生的 pending owner-review dispatch 轉成可操作 inbox,而不是只把任務藏在 DB 或 Telegram。 +- 這一步仍不自動批量寫 KM;Hermes 主責排序與草稿/任務,OpenClaw 提供告警/規則/PlayBook 脈絡,ElephantAlpha read-only 稽核,最後由 owner 逐筆確認。 +- 下一段應做 owner-approved completion runner / stale ratio burn-down:讓已審核項目完成後自動重算 stale ratio,並把「完成、跳過、失敗、等待人工」在同一頁閉環。 + +**目前整體進度**: + +- AwoooP 告警可觀測鏈:約 98%。 +- 治理告警可讀性 / 可處置性:約 97%。 +- KM stale governance 自動化:約 94.5%。 +- Frontend AI 自動化管理介面同步:約 98%。 +- Runtime rollout 穩定性:約 97%。 +- 完整 AI 自動化管理產品化:約 96%。 + ## 2026-05-24|T157 P0/P1 stale KM batch owner-review queue **觸發**: