From 04ceb3e7c8c22dc5d7ec0efb1cd0e2e82d3304a2 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 1 Jun 2026 17:58:17 +0800 Subject: [PATCH] docs: record auto execute slo diagnostics rollout [skip ci] --- docs/LOGBOOK.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/docs/LOGBOOK.md b/docs/LOGBOOK.md index aa09da59..e712affd 100644 --- a/docs/LOGBOOK.md +++ b/docs/LOGBOOK.md @@ -17,6 +17,35 @@ - 整體維持 `61%`;本輪是 UI/UX、證據語義與防退化,不是 Kali SSH、掃描、主機更新、修復、部署、GitHub primary 切換或 Gitea 停用。 +## 2026-06-01|W-1 自動修復成功率告警診斷可解釋化 + +**背景**: + +- META SYSTEM `AI 自健診異常` 只顯示 `SLO 違反: auto_execute_success_rate`,使用者無法知道是新問題、舊歷史滾動窗、已封口修復來源,或仍需人工介入。 +- 前一階段已封住兩個實際失敗來源:Docker healthcheck legacy SSH restart 已走 `ssh_docker_restart/write` MCP grant,`StockWoooWorkDown` 已阻擋誤配 K3s node PlayBook。 +- 頂層 W-1 仍紅是 7 日滾動窗仍包含舊失敗,不能用改寫歷史資料或硬把紅燈改綠處理。 + +**本次調整**: + +- `apps/api/src/services/ai_slo_calculator.py`:`SloReport` 新增 `diagnostics`,當 `auto_execute_success_rate` 違反時,回傳 7 日視窗內的成功/失敗摘要、top failure groups、已封口群組、待查群組、立即回綠所需真實成功樣本數與 rolling-window 預估回綠時間。 +- `apps/api/src/jobs/ai_slo_watchdog_job.py`:W-1 META 告警改用 diagnostics 組成白話摘要;dedup key 仍維持穩定 W-code,不因動態數值造成洗版。 +- `apps/api/tests/test_ai_slo_calculator.py`:新增 diagnostics、rolling-window projection、watchdog 格式化的防回歸測試。 + +**驗證**: + +- `python3 -m py_compile apps/api/src/services/ai_slo_calculator.py apps/api/src/jobs/ai_slo_watchdog_job.py` +- `DATABASE_URL=sqlite+aiosqlite:///:memory: PYTHONPATH=apps/api /Users/ogt/.pyenv/shims/pytest apps/api/tests/test_ai_slo_calculator.py apps/api/tests/test_trust_drift_watchdog.py -q` → `16 passed` +- `DATABASE_URL=sqlite+aiosqlite:///:memory: PYTHONPATH=apps/api /Users/ogt/.pyenv/shims/pytest apps/api/tests/test_ai_slo_calculator.py apps/api/tests/test_trust_drift_watchdog.py apps/api/tests/test_auto_repair_service.py apps/api/tests/test_alert_rule_engine_validation.py -q` → `81 passed` +- `python3 scripts/security/security-mirror-progress-guard.py --root .` → `SECURITY_MIRROR_PROGRESS_GUARD_OK` +- Gitea:`3523` CD success、`3524` code-review success;production image `192.168.0.110:5000/awoooi/api:d610c7386e615173f8229b42ff82f45321e15540`。 +- 正式 API:`/api/v1/ai/slo?force_refresh=true` 回傳 `auto_execute_success_rate=44/53=83.0%`、`diag_status=sealed_waiting_window`、`sealed=2`、`open=0`、`immediate_successes_needed=7`、`projected_green_at=2026-06-03T15:07:04.658109+00:00`。 +- Watchdog 格式化 smoke:`SLO 違反: auto_execute_success_rate (44/53=83.0%,門檻 85%;已封口群組 2,待查群組 0;預估 06/03 23:07 回綠)`,probable cause 會列出 `DockerContainerUnhealthy/PB-20260420-3F9C4C×5=sealed_by_mcp_grant` 與 `StockWoooWorkDown/PB-20260416-79EB94×4=sealed_by_external_site_guard`。 + +**進度邊界**: + +- 整體 AI 自動化飛輪進度仍維持 `61%`。 +- 本輪完成的是「紅燈可解釋化與告警分流」,不代表真實自動修復成功率已回升;目前已知舊失敗來源已封口,但仍需等待舊失敗滾出 7 日視窗,或產生新的真實成功自動修復樣本。 + ## 2026-06-01|StockWoooWorkDown 防止誤配 K3s node PlayBook **背景**: