fix(reboot): expose runtime scorecard freshness
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 52s
CD Pipeline / post-deploy-checks (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled

This commit is contained in:
Your Name
2026-07-02 18:27:06 +08:00
parent e97af7951a
commit 1f251d06f4
5 changed files with 100 additions and 3 deletions

View File

@@ -1,3 +1,17 @@
## 2026-07-02 — 18:25 P0-006 scorecard / workbench runtime freshness readback 分層
**完成內容**
- `/api/v1/agents/reboot-auto-recovery-slo-scorecard` 不再把 committed scorecard 的 `generated_at` 當成本次 API runtime readback 時間;新增 `snapshot_generated_at` 保留來源快照時間,`generated_at` / `runtime_readback_generated_at` 改為 API 讀回當下 Taipei time。
- `/api/v1/agents/delivery-closure-workbench` 同步分層 `generated_at``runtime_readback_generated_at``source_generated_at``snapshot_generated_at`,並在 `readback``summary``rollups``source_statuses` 呈現,避免把靜態快照 freshness 誤判成 production readback freshness。
- 現況仍維持 P0-006 blockedreadiness `43%`、active blockers `11`、Windows 99 remote execution channel `false`、SSH BatchMode `permission_denied`;不得宣稱 10 分鐘自恢復 SLO 已完成。
**驗證**
- `DATABASE_URL=postgresql+asyncpg://test:test@localhost/test PYTHONPATH=apps/api python3.11 -m pytest apps/api/tests/test_reboot_auto_recovery_slo_scorecard_api.py apps/api/tests/test_delivery_closure_workbench_api.py -q -p no:cacheprovider``10 passed`
- `python3.11 -m py_compile apps/api/src/services/reboot_auto_recovery_slo_scorecard.py apps/api/src/services/delivery_closure_workbench.py apps/api/tests/test_reboot_auto_recovery_slo_scorecard_api.py apps/api/tests/test_delivery_closure_workbench_api.py`:通過。
**仍維持**
- 未使用 GitHub / `gh` / GitHub API未讀 secret / token / `.env` / raw sessions / SQLite / auth未觸發 workflow未重啟主機 / VM / Docker / Nginx / K3s / DB / firewall未寫 production DB。
## 2026-07-02 — 15:42 P0-006 Windows99 verify collector 留在 controlled-runtime CD lane
**完成內容**