Compare commits

...

1 Commits

Author SHA1 Message Date
Your Name
5d6788a9ee docs(awooop): record controlled automation readback [skip ci] 2026-06-27 21:19:45 +08:00

View File

@@ -1,3 +1,45 @@
## 2026-06-27AwoooP Approvals controlled automation 文案正式讀回完成
**背景**P2-416 D1N 已把 AI Agent 舊 manual gate 規範改為 controlled automationlow / medium / high 風險應走 allowlist、check-mode、controlled apply、verifier、rollback 與 KM / PlayBook writebackcritical 才 break-glass。正式 `/zh-TW/awooop/approvals` 仍因 Next HTML payload 序列化其他 namespace殘留 `待人工決策``阻塞與人工閘門``人工接手``owner review``owner packet` 等舊語意,容易讓 Approvals / Runs / Work Items / Alerts 看起來把人工當預設終局。
**完成內容**
- `apps/web/messages/zh-TW.json``apps/web/messages/en.json` 已同步清理 AwoooP / AI Agent runtime-control / Work Items / Alerts 相關舊文案。
- 低 / 中 / 高風險流程改為 `controlled gate``controlled apply``controlled review`、AI 補齊、verifier、rollback 與 `break-glass` 邊界。
- `apps/web/src/app/[locale]/awooop/runs/page.tsx` 的 lane 顯示從 `人工閘門` / `人工升級` 改為 `AI 受控閘門` / `AI 補齊升級`
- `apps/web/src/app/[locale]/awooop/approvals/[run_id]/page.tsx` 註解改為 AI controlled approval 回到 Run State / Timeline不再用人工審批孤島語意。
- IwoooS / GitHub backup / Wazuh owner evidence 等仍需負責人證據或 break-glass 的歷史與 hard-blocker 語意保留,不把 `0 / false` 假性上修。
**本地驗證結果**
- JSON parse`apps/web/messages/zh-TW.json``apps/web/messages/en.json` 通過。
- i18n mirror`zh-TW.json``en.json` 一致。
- source 搜尋:`待人工決策``等待人工決策``阻塞與人工閘門``人工接手``低/中/高人工 gate``人工決策佇列``人工關卡``人工 gate``owner review``owner packet` 在 AwoooP / Alerts 相關前端 source 中命中 `0`
- `pnpm --filter @awoooi/web typecheck`:通過。
- 本地 `NEXT_PUBLIC_API_URL=https://awoooi.wooo.work` dev server HTML readbackApprovals / Runs / Work Items / Alerts 四頁皆 `200`,上述舊詞 HTML count 全部 `0`
- 本地 desktop `1366x900` 與 mobile `390x844` DOM smoke四頁都有 body、舊詞 visible / HTML count 全部 `0``horizontalOverflow=false`
**Gitea / deploy 狀態**
- feature commit`f47ee7d96 fix(awooop): align approvals with controlled automation`
- deploy marker`c6bc1e6d1 chore(cd): deploy f47ee7d [skip ci]`
- Gitea code-review`code-review.yaml #3687` 成功。
- Gitea CD`cd.yaml #3686` 成功。
- 推送方式normal push to `gitea-ssh main`,無 force push。
**正式讀回結果**
- `GET /api/v1/agents/agent-autonomous-runtime-control``200`schema `ai_agent_autonomous_runtime_control_v1`,命中 marker `p2_416_d1n_autonomous_runtime_control_prod_readback_v2`
- `current_policy.low_risk_controlled_apply_allowed=true``medium_risk_controlled_apply_allowed=true``high_risk_controlled_apply_allowed=true`
- `owner_review_required_for_low_medium_high=false``critical_break_glass_required=true``direct_bot_api_allowed=false``telegram_gateway_required=true``post_apply_verifier_required=true``km_learning_writeback_required=true`
- `runtime_switches.ansible_controlled_apply_allowed_risk_levels=["high","low","medium"]`hard blocker count `7`
- production HTML readbackApprovals / Runs / Work Items / Alerts 四頁皆 `200`,舊詞 HTML count 全部 `0``controlled gate` / `controlled review``待 AI 受控決策` 等新語意可讀。
- production desktop / mobile browser smoke四頁 visible / HTML 舊詞 count 全部 `0``horizontalOverflow=false`
**仍維持 hard blocker / 0 狀態**
- critical / secret / token / private key / cookie / session / auth header 明文、destructive DB、restore / prune、reboot / node drain、irreversible firewall / host lockout、credentialed exploit / external active scan、付費 provider / provider switch、force push / refs deletion / repo visibility change 仍需 break-glass 或獨立合約。
- 這次是 UI / i18n / runtime-control readback 語意收斂,不是開啟 direct Bot API、讀 secret、執行 host write、重啟服務、改 firewall、改 DB、active scan 或 force push。
**下一步**
- 下一個 P0 回到實際 runtime closure用真實告警或重診事件驗證 owner release / controlled execution / post-apply verifier / KM 與 PlayBook writeback 是否能形成 production receipt。
- 若接 GitHub backup / Wazuh owner evidence 支線,仍需保留 `0 / false` 計數,不得用 AwoooP UI 可見或 deploy marker 代替 runtime authorization。
## 2026-06-27 — 20:49 GitHub backup owner response intake readiness 本地完成
**背景**GitHub private backup gate 已能讀回 5 個 missing target source readiness但下一個安全步驟需要讓產品端清楚知道 owner response 可以收哪些欄位、必須拒收哪些 payload以及每個 target 對應哪個 response template同時不能把一般「批准 / 繼續」誤當成 repo creation、visibility change 或 refs sync 授權。