docs(logbook): record Wazuh live route runtime readback [skip ci]

This commit is contained in:
Your Name
2026-06-26 23:54:25 +08:00
parent 1e09a1f39f
commit 9c6d2120e0

View File

@@ -1,3 +1,48 @@
## 2026-06-26D1G IwoooS Wazuh live route 紅燈前移Runtime board 與正式站讀回完成
**背景**:正式站已確認 `/api/iwooos/wazuh` 不是 registry empty而是 `disabled_waiting_iwooos_wazuh_owner_gate`;過去這個狀態只在頁面下方 Wazuh 卡片可見,容易讓 Runtime 資安總板看起來像只剩靜態 snapshot。此段把 Wazuh 只讀路由的公開安全 aggregate 狀態接進 Runtime 資安讀回首屏,讓 disabled、misconfigured、empty、below expected、unavailable 都成為 P0 紅燈。
**完成內容**
- 新增 `iwooos_wazuh_readonly_status.py`,將 Wazuh 只讀 metadata 邏輯從 FastAPI router 拆成可重用 service仍只回 aggregate 與 agent alias不保存 raw Wazuh payload、不公開 agent 原名、內網位址、token、password 或 secret。
- `GET /api/v1/iwooos/runtime-security-readback` 新增 `wazuh_live_route` lane 與 `wazuh_live_*` summary`p0_lane_count``6``7`
- `/zh-TW/iwooos` Runtime board 首屏新增 `Wazuh live` 摘要,顯示 `agent_total / status`,並把 disabled / empty / below expected 顯示為警示,不用 route 200 蓋過。
- `wazuh-readonly-route-boundary-guard.py` 從掃 2 個 route 擴充為掃 3 個 sourceNext route、FastAPI route、FastAPI Wazuh service硬編內網 URL、Wazuh port、帳密、關 TLS、raw payload、假 SOC 文案仍全部阻擋。
**Commit / deploy**
- Code commit`9778cc22f feat(iwooos): surface Wazuh live route in runtime readback`
- 本段 deploy marker`aa1e79ba5 chore(cd): deploy 9778cc2 [skip ci]`
- 最新正式 marker`99cbe5022 chore(cd): deploy 4013c6a [skip ci]`,包含 `9778cc22f` 與後續 `4013c6a1a`
- Gitea`#3539` code-review success`#3538` CD 的 `tests``build-and-deploy` success 後被 deploy-marker / 後續 push 取消 post-check最新 `#3542` code-review success、`#3541` CD success。額外 `#3540` validate 仍 queued不阻擋 production deploy truth。
**正式 API 讀回**
- `/api/v1/iwooos/runtime-security-readback?_v=4013c6a-wazuh-live-final``200``schema_version=iwooos_runtime_security_readback_v1``mode=committed_snapshot_readback_with_public_safe_wazuh_route_metadata``p0_lane_count=7``wazuh_live_status=disabled_waiting_iwooos_wazuh_owner_gate``wazuh_live_route_http_status=200``wazuh_live_route_degraded_count=1``wazuh_live_readonly_api_enabled_count=0``wazuh_live_agent_total=0``wazuh_live_metadata_available_count=0``runtime_gate_count=0``owner_response_accepted_count=0``wazuh_manager_registry_accepted_count=0``wazuh_live_route` lane 存在。
- `/api/iwooos/wazuh?_v=4013c6a-final``/api/v1/iwooos/wazuh?_v=4013c6a-final``200 disabled_waiting_iwooos_wazuh_owner_gate``configured=false``readonly_api_enabled_count=0``runtime_gate_count=0`
- API response 均未含 `192.168.0.``工作視窗``批准!繼續``My request for Codex``In app browser`
**正式站瀏覽器驗證**
- Desktop `1280x900``/zh-TW/iwooos?_v=9778cc2-wazuh-live-route-desktop` 可見 `七條 P0 資安線``Wazuh live0/disabled_waiting_iwooos_wazuh_owner_gate``Wazuh 正式只讀路由`console error `0`、horizontal overflow `false`、未出現內網 IP 或工作視窗內容。
- Mobile `390x844``/zh-TW/iwooos?_v=4013c6a-wazuh-live-final-mobile` 可見 `七條 P0 資安線``Wazuh live``disabled_waiting_iwooos_wazuh_owner_gate``Wazuh 正式只讀路由``clientWidth=390``scrollWidth=384`、horizontal overflow `false`、console error `0`、未出現內網 IP 或工作視窗內容。
**驗證**
- `pytest apps/api/tests/test_iwooos_runtime_security_readback.py apps/api/tests/test_iwooos_wazuh_api.py -q``10 passed`
- IwoooS / Telegram / operator 關鍵子集:`255 passed`
- `wazuh-readonly-route-boundary-guard.py --root .``WAZUH_READONLY_ROUTE_BOUNDARY_GUARD_OK route=3 public_ui_files=1 forbidden=0 runtime_gate=0`
- `security-mirror-progress-guard.py --root .``SECURITY_MIRROR_PROGRESS_GUARD_OK`
- `source-control-owner-response-guard.py --root .``SOURCE_CONTROL_OWNER_RESPONSE_GUARD_OK`
- `doc-secrets-sanity-check.py ...``DOC_SECRET_SANITY_OK scanned_files=274`
- `py_compile``json.tool``git diff --check`:通過。
- `pnpm --dir apps/web typecheck`:本臨時 worktree 缺 `apps/web/node_modules/typescript`,未能本地執行;已由 Gitea CD 與 production browser readback 補正式驗證。
**完成度**
- Wazuh live route 接入 Runtime board正式站 `100%`
- IwoooS Runtime 資安讀回層:`94% -> 95%`
- IwoooS 整體資安推進:維持 `65%`;不因 route 可見、lane 接上或 CD success 虛增 runtime acceptance。
- Wazuh live metadata enable`0%`
- Wazuh manager registry accepted`0`
- Owner response accepted、runtime acceptance、active response、host write、Kali active scan、Telegram send、secret collection仍全部 `0 / false`
**下一個 P0**:補 Wazuh live metadata owner gate、server-side secret source metadata、readonly account scope、manager health ref、TLS validation ref、post-enable readback之後才可進 manager registry 全量交叉驗收;仍不得直接寫 secret、重啟 Wazuh、重新註冊 agent、改 Nginx / firewall、SSH 主機或啟用 active response。
## 2026-06-26D1F AI Agent 受控自動化契約:低 / 中 / 高風險不再停在人工審核
**背景**:使用者明確修正方向:低、中、高風險都必須由 AI Agent 走受控自動化處理,高風險不再預設等待人工審核;只有 critical / secret / destructive / paid / force-push 等 break-glass 邊界需保留。盤點後確認部分報表、Schema、API 型別與 AI 技術雷達日週月報仍殘留 `high risk owner review``current_execution_enabled=false` 或「高風險必須人工」語意。