OG T
fab65e7d7a
CD Pipeline / build-and-deploy (push) Has started running
fix(alerts): PENDING 收斂無 TTL → 老記錄永久封鎖 Telegram 告警
根因:find_by_fingerprint 的 PENDING 匹配條件無時間上限,
2026-04-12 建立的 3 筆 PENDING approval records(hit=77/30/17)
持續吃掉所有同指紋告警,造成 2+ 小時 Telegram 靜音。
修正(approval_db.py):
- PENDING_TTL_HOURS = 24:PENDING 記錄逾 24h 不再收斂新告警
- 原本:OR(status=PENDING, created_at>=30min前)
- 修正:OR(PENDING AND created_at>=24h前, created_at>=30min前)
緊急修復:kubectl exec 直接將 7 筆過期 PENDING 記錄設為 expired,
即時恢復 Telegram 告警流(不等部署)。
Phase 6 AI 自我治理閉環(ADR-087):
- feat(db): 新增 ai_governance_events 表 + 3 個 index(base.py + models.py)
- feat(svc): ai_slo_calculator.py — 7d 滾動 SLO(success/override/false_neg)
- feat(svc): trust_drift_detector.py — Playbook 信任度極端偏態偵測
- feat(job): kb_rot_cleaner.py — K8s API/Prom metric/老舊 incident_case 腐爛清理
- feat(svc): decision_manager.py — 自我降級守衛(SLO 違反 → 提高門檻/保守模式)
2026-04-15 ogt + Claude Sonnet 4.6(亞太)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 18:56:26 +08:00
..
2026-03-25 16:08:49 +08:00
2026-04-09 15:05:16 +08:00
2026-03-25 09:26:58 +08:00
2026-03-28 18:51:52 +08:00
2026-04-15 13:48:55 +08:00
2026-03-26 16:06:20 +08:00
2026-04-03 13:22:36 +08:00
2026-04-03 13:22:36 +08:00
2026-04-14 19:37:03 +08:00
2026-04-15 18:56:26 +08:00
2026-04-12 22:50:20 +08:00
2026-04-14 14:39:14 +08:00
2026-04-15 10:56:48 +08:00
2026-04-07 13:13:42 +08:00
2026-04-15 18:56:26 +08:00
2026-04-15 14:01:37 +08:00
2026-03-31 16:25:00 +08:00
2026-04-15 10:56:48 +08:00
2026-04-09 12:26:18 +08:00
2026-04-15 16:06:54 +08:00
2026-04-14 20:34:14 +08:00
2026-04-14 20:43:40 +08:00
2026-04-10 22:35:37 +08:00
2026-03-29 16:00:46 +08:00
2026-03-26 15:32:52 +08:00
2026-03-29 15:57:04 +08:00
2026-03-23 23:51:37 +08:00
2026-04-15 18:56:26 +08:00
2026-04-15 16:06:54 +08:00
2026-03-26 21:55:50 +08:00
2026-04-05 00:39:29 +08:00
2026-04-04 12:35:05 +08:00
2026-04-05 12:11:05 +08:00
2026-04-11 20:45:53 +08:00
2026-04-12 20:20:47 +08:00
2026-04-05 00:22:38 +08:00
2026-03-22 18:57:44 +08:00
2026-04-15 15:34:33 +08:00
2026-04-11 20:45:53 +08:00
2026-03-29 16:00:46 +08:00
2026-04-15 15:47:05 +08:00
2026-04-09 19:10:27 +08:00
2026-03-31 12:23:02 +08:00
2026-04-12 18:45:40 +08:00
2026-04-12 22:45:09 +08:00
2026-03-31 16:06:35 +08:00
2026-04-15 16:06:54 +08:00
2026-04-01 11:11:50 +08:00
2026-03-24 12:57:36 +08:00
2026-03-31 16:06:35 +08:00
2026-04-12 22:52:05 +08:00
2026-04-09 23:36:36 +08:00
2026-04-07 11:17:40 +08:00
2026-04-11 20:45:53 +08:00
2026-03-26 19:25:52 +08:00
2026-03-31 22:47:54 +08:00
2026-03-31 22:47:54 +08:00
2026-04-14 18:25:15 +08:00
2026-03-29 22:17:27 +08:00
2026-03-31 11:23:38 +08:00
2026-03-26 21:55:50 +08:00
2026-04-12 17:52:57 +08:00
2026-04-03 14:40:27 +08:00
2026-04-10 10:43:53 +08:00
2026-04-11 20:45:53 +08:00
2026-04-02 09:02:41 +08:00
2026-04-15 16:06:54 +08:00
2026-04-11 20:45:53 +08:00
2026-04-15 15:34:33 +08:00
2026-04-11 20:45:53 +08:00
2026-04-15 13:08:38 +08:00
2026-03-26 10:01:57 +08:00
2026-04-09 10:52:40 +08:00
2026-03-26 12:49:30 +08:00
2026-04-09 14:55:04 +08:00
2026-03-31 16:06:35 +08:00
2026-04-14 20:38:00 +08:00
2026-04-06 11:46:05 +08:00
2026-04-10 11:35:10 +08:00
2026-04-15 14:01:37 +08:00
2026-04-04 12:02:03 +08:00
2026-04-10 21:52:38 +08:00
2026-04-14 15:19:54 +08:00
2026-04-15 13:08:38 +08:00
2026-04-15 15:47:05 +08:00
2026-04-08 16:36:18 +08:00
2026-04-15 15:47:05 +08:00
2026-04-09 18:34:50 +08:00
2026-03-26 16:03:16 +08:00
2026-04-14 18:46:25 +08:00
2026-03-29 16:00:46 +08:00
2026-04-15 16:06:54 +08:00
2026-04-04 12:35:05 +08:00
2026-04-15 13:08:38 +08:00
2026-04-05 13:40:52 +08:00
2026-03-29 15:27:49 +08:00
2026-04-01 16:20:57 +08:00
2026-04-08 21:47:38 +08:00
2026-03-26 13:06:47 +08:00
2026-03-26 15:32:52 +08:00
2026-03-29 15:27:49 +08:00
2026-04-15 13:17:10 +08:00
2026-03-30 01:52:59 +08:00
2026-03-24 09:20:56 +08:00
2026-03-26 16:06:20 +08:00
2026-04-15 15:47:05 +08:00
2026-04-15 18:56:26 +08:00
2026-03-26 22:13:10 +08:00
2026-04-08 16:36:18 +08:00
2026-04-07 13:02:20 +08:00