From 824a56029db62851218f1fb35a0207245d6c469f Mon Sep 17 00:00:00 2001 From: Your Name Date: Sat, 27 Jun 2026 14:06:56 +0800 Subject: [PATCH] docs(iwooos): record owner evidence intake production readback [skip ci] --- docs/LOGBOOK.md | 66 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/docs/LOGBOOK.md b/docs/LOGBOOK.md index e1a301f00..c292881ce 100644 --- a/docs/LOGBOOK.md +++ b/docs/LOGBOOK.md @@ -46969,3 +46969,69 @@ production browser smoke: **下一步**: - commit / push 後等待 Gitea CD;CD 完成後驗證正式 API schema、六條 lane、Wazuh lane 可見、0 / false 邊界、禁止字串不出現,並做 `/zh-TW/iwooos` 桌機 / 手機無水平溢出確認。 + +## 2026-06-27 — 14:06 IwoooS 負責人脫敏證據收件預檢正式讀回完成 + +**時間與來源**: +- 2026-06-27 13:54-14:06 Asia/Taipei。 +- 來源:Gitea Actions readback、Gitea main、production API、production route smoke、in-app browser desktop / mobile smoke。 + +**版本與 runs**: +- IwoooS owner evidence intake code commit:`ddaad724a feat(iwooos): expose owner evidence intake preflight`。 +- 後續 runtime bundle commit:`8761459f9 fix(api): record ansible apply repair receipts`,包含 `ddaad724a`。 +- 最新 runtime bundle commit:`7a1ad85d6 fix(api): backfill ansible apply repair receipts`,仍包含 `ddaad724a`。 +- deploy marker:`52e942e19 chore(cd): deploy 7a1ad85 [skip ci]`。 +- code-review run:`3598` 對 `ddaad724a`,`10s`;`3602` 對 `7a1ad85d6`,`13s`。 +- CD run:`3597` 對 `ddaad724a` 被後續 main 變更取代;實際正式讀回以 `3599` / `3601` 後的 production 狀態為準。 +- CD run `3599` 對 `8761459f9`:tests `success in 1m39s`、build-and-deploy 已完成部署並產生 `adceae6f4`,post-deploy 最終顯示 canceled;production endpoint 已轉 `200`。 +- CD run `3601` 對 `7a1ad85d6`:tests `success in 1m39s`;build-and-deploy 在 `Deploy to K8s (ArgoCD GitOps)` timeout,失敗時 ArgoCD 已 `Synced` 到 `52e942e1` 但 health 仍 `Progressing`,deploy marker `52e942e19` 已 push;post-deploy skipped。 +- 本輪未重跑 workflow、未取消 run、未修改 CD workflow。 + +**production API readback**: +- `GET /api/v1/iwooos/owner-evidence-intake-preflight`:`200`。 +- schema:`iwooos_owner_evidence_intake_preflight_v1`。 +- status:`owner_evidence_intake_preflight_ready_no_runtime_action`。 +- summary:`lane_count=6`、`canonical_owner_field_count=9`、`required_owner_field_total=54`、`dispatch_preflight_check_count=9`、`reviewer_intake_lane_count=5`、`request_sent_count=0`、`owner_response_received_count=0`、`owner_response_accepted_count=0`、`runtime_gate_count=0`、`action_button_count=0`。 +- lane ids:`nginx_public_gateway`、`dns_tls_certbot`、`k8s_production_gitops`、`secret_workflow_runner_source_control`、`public_admin_api_runtime_config`、`wazuh_manager_registry`。 +- 第一優先 lane:`nginx_public_gateway`,label `Nginx / 公開入口 / 反向代理`。 +- Wazuh lane:`wazuh_manager_registry` 已在 API 可見,但 `wazuh_live_query_authorized_count=0`、`wazuh_active_response_authorized_count=0`。 +- execution boundaries:`runtime_execution_authorized=false`、`host_write_authorized=false`、`nginx_reload_authorized=false`、`dns_tls_change_authorized=false`、`workflow_modification_authorized=false`、`wazuh_api_live_query_authorized=false`、`wazuh_active_response_authorized=false`、`active_scan_authorized=false`、`not_authorization=true`。 +- 嚴格禁止字串掃描:內網位址片段、工作視窗內容、`批准!繼續`、`source_thread_id`、個人 repo namespace、private key、token 指派式字串、password / secret 指派式字串均未出現。 + +**production browser smoke**: +- Desktop `1366x900`,URL `https://awoooi.wooo.work/zh-TW/iwooos?_v=52e942e19-owner-evidence-desktop`。 + - markers present:`負責人證據收件預檢`、`只讀 API 已接上`、`Nginx / 公開入口 / 反向代理`、`Wazuh manager registry / 逐主機矩陣`、`owner_evidence_intake_lane_count=6`、`runtime_gate_count=0`、`not_authorization=true`。 + - forbidden hits:`0`。 + - console errors:`0`。 + - page overflow:`0`,無整頁水平溢出。 +- Mobile `390x844`,URL `https://awoooi.wooo.work/zh-TW/iwooos?_v=52e942e19-owner-evidence-mobile`。 + - markers present:同 desktop。 + - forbidden hits:`0`。 + - console errors:`0`。 + - page overflow:`0`,無整頁水平溢出。 + +**production route / health readback**: +- `GET /api/v1/health`:`200`,`status=healthy`、`environment=prod`、`mock_mode=false`。 +- `GET /api/v1/iwooos/high-value-config-control-coverage`:`200`,既有高價值配置 API 未退化。 +- `GET /zh-TW/iwooos`:`200`。 +- `GET /zh-TW/awooop/runs?project_id=awoooi`:`200`。 + +**完成度與同步狀態**: +- 本段「owner-provided redacted evidence intake 預檢 API / 前台」:`80% -> 100%`,已完成 commit、push、production API readback、desktop / mobile browser smoke。 +- IwoooS 整體:保守 `65% -> 66%`。此段建立 P0 owner evidence 收件預檢與前台可視化,但仍未收到 / 接受 owner response,也未開 runtime。 +- P0 收件治理:`55% -> 62%`,六條 P0 lane 已進同一條 API / 前台讀回;下一步才是正式 owner-provided redacted evidence 收件與 reviewer validation。 +- CD / rollout 狀態:production readback green,但 Gitea CD `3601` 仍需另開一筆 rollout timeout / ArgoCD Progressing no-false-green 追蹤,不能把 workflow 狀態寫成全綠。 + +**仍維持 0 / false**: +- `request_sent_count=0`、`owner_response_received_count=0`、`owner_response_accepted_count=0`、`owner_response_quarantined_count=0`、`reviewer_queue_write_count=0`、`runtime_gate_count=0`、`action_button_count=0`。 +- `runtime_execution_authorized=false`、`host_write_authorized=false`、`nginx_reload_authorized=false`、`dns_tls_change_authorized=false`、`workflow_modification_authorized=false`、`wazuh_api_live_query_authorized=false`、`wazuh_active_response_authorized=false`、`secret_value_collection_allowed=false`、`active_scan_authorized=false`。 + +**做過的命令類型**: +- 寫入:repo code / test / frontend / guard / LOGBOOK,以及正常 Gitea push。 +- 只讀:Gitea Actions UI readback、production API readback、production route smoke、production browser smoke。 +- 未做:沒有 host / Docker / systemd / Nginx / firewall / K8s / DB / Wazuh runtime 寫操作;沒有讀 secret 明文;沒有 Nginx reload;沒有 ArgoCD sync;沒有 kubectl;沒有 workflow 修改;沒有 Wazuh active response;沒有 Kali active scan;沒有 force push。 + +**下一個 P0**: +- `P0-01` CD rollout timeout no-false-green:把 `3601` 的 ArgoCD `Progressing` timeout 與 production readback green 分開記錄,避免把 workflow failure 或 UI green 任一方單獨當真相。 +- `P0-02` owner-provided redacted evidence intake:開始接收六條 lane 的脫敏 evidence refs,但仍先維持 request / received / accepted / runtime 0,直到 reviewer validation 成立。 +- `P0-03` Wazuh manager registry accepted:只讀交叉驗收所有 expected host / product / agent scope,不把 Dashboard 可開、API 200 或前台 lane 可見當作全主機納管恢復。