Your Name
|
5b144f0c92
|
docs(security): record PR handoff and main sync [skip ci]
|
2026-05-12 23:32:20 +08:00 |
|
Your Name
|
dc540cba52
|
chore(security): sync with gitea main [skip ci]
|
2026-05-12 23:27:42 +08:00 |
|
AWOOOI CD
|
1a62c322bc
|
chore(cd): deploy 24b15f4 [skip ci]
|
2026-05-12 15:26:34 +00:00 |
|
Your Name
|
8ce318ac1c
|
docs(security): add supply chain contract manifest [skip ci]
|
2026-05-12 23:23:17 +08:00 |
|
Your Name
|
24b15f4ad2
|
feat(awooop): harden outbound truth chain mirror
Code Review / ai-code-review (push) Successful in 10s
run-migration / migrate (push) Failing after 8s
CD Pipeline / tests (push) Successful in 1m4s
CD Pipeline / build-and-deploy (push) Successful in 3m27s
CD Pipeline / post-deploy-checks (push) Successful in 1m18s
|
2026-05-12 23:21:45 +08:00 |
|
Your Name
|
c652f37b69
|
docs(awooop): 記錄 truth-chain production smoke
|
2026-05-12 23:05:16 +08:00 |
|
AWOOOI CD
|
c523a22d89
|
chore(cd): deploy f7c8453 [skip ci]
|
2026-05-12 15:00:31 +00:00 |
|
Your Name
|
f7c84530d6
|
feat(awooop): 新增 truth-chain 查詢 API
Code Review / ai-code-review (push) Successful in 10s
CD Pipeline / tests (push) Successful in 1m16s
CD Pipeline / build-and-deploy (push) Successful in 3m29s
CD Pipeline / post-deploy-checks (push) Successful in 1m19s
|
2026-05-12 22:55:36 +08:00 |
|
Your Name
|
56228dbb79
|
docs(awooop): 盤點 Telegram 自動化真相鏈缺口
|
2026-05-12 22:41:05 +08:00 |
|
Your Name
|
de16c88418
|
chore(rls): 套用 outbound message canary
Code Review / ai-code-review (push) Successful in 11s
|
2026-05-12 21:55:23 +08:00 |
|
Your Name
|
edd06485e0
|
docs(rls): 記錄 projects canary 套用
|
2026-05-12 21:41:14 +08:00 |
|
AWOOOI CD
|
7f94bc5776
|
chore(cd): deploy 7d92f0a [skip ci]
|
2026-05-12 13:30:31 +00:00 |
|
Your Name
|
7d92f0acd7
|
chore(rls): stage projects canary path
Code Review / ai-code-review (push) Successful in 10s
CD Pipeline / tests (push) Successful in 1m8s
CD Pipeline / build-and-deploy (push) Successful in 3m49s
CD Pipeline / post-deploy-checks (push) Successful in 1m25s
|
2026-05-12 21:25:24 +08:00 |
|
Your Name
|
b7af597459
|
chore(rls): 套用 tool registry canary wave1.1
Code Review / ai-code-review (push) Successful in 10s
|
2026-05-12 21:15:14 +08:00 |
|
Your Name
|
1617b73a9d
|
docs(rls): 記錄 canary wave1 production apply
|
2026-05-12 20:55:40 +08:00 |
|
Your Name
|
8c4dc7a5a8
|
chore(rls): 新增 manual script gate 與 canary wave1
Code Review / ai-code-review (push) Successful in 10s
CD Pipeline / tests (push) Successful in 1m5s
CD Pipeline / build-and-deploy (push) Failing after 10m6s
CD Pipeline / post-deploy-checks (push) Has been skipped
|
2026-05-12 20:23:27 +08:00 |
|
AWOOOI CD
|
be8ddf4599
|
chore(cd): deploy ff30c61 [skip ci]
|
2026-05-12 20:01:07 +08:00 |
|
Your Name
|
ff30c61c4c
|
fix(rls): 收斂 API DB access context
Code Review / ai-code-review (push) Successful in 21s
CD Pipeline / tests (push) Successful in 1m20s
CD Pipeline / build-and-deploy (push) Successful in 4m15s
CD Pipeline / post-deploy-checks (push) Successful in 1m58s
|
2026-05-12 19:55:13 +08:00 |
|
Your Name
|
33c0577e93
|
docs(ops): 記錄 RLS role bootstrap 套用
|
2026-05-12 19:35:28 +08:00 |
|
Your Name
|
f0255e0300
|
chore(ops): 補強 RLS role bootstrap gate
Code Review / ai-code-review (push) Successful in 10s
|
2026-05-12 18:36:35 +08:00 |
|
Your Name
|
0bc1878778
|
chore(ops): 新增 RLS preflight 與 registry certbot 修復包
Code Review / ai-code-review (push) Successful in 13s
|
2026-05-12 18:25:53 +08:00 |
|
Your Name
|
a18e2f9c3f
|
fix(security): 停用 GitHub production deploy
|
2026-05-12 16:22:16 +08:00 |
|
Your Name
|
6b02f49fc6
|
docs(backup): 校正 MOMO 備份驗證紀錄
|
2026-05-12 15:53:20 +08:00 |
|
Your Name
|
216b7d78e2
|
fix(backup): 接入 MOMO PG 備份失敗通知
Code Review / ai-code-review (push) Successful in 11s
Ansible Lint / lint (push) Has been cancelled
|
2026-05-12 15:50:44 +08:00 |
|
Your Name
|
abdab85362
|
docs(awooop): record host backup notification deploy
|
2026-05-12 14:59:17 +08:00 |
|
Your Name
|
116fdbb33f
|
docs(awooop): record ops notification deployment
|
2026-05-12 14:55:48 +08:00 |
|
AWOOOI CD
|
9db1e9b7a5
|
chore(cd): deploy 1a74286 [skip ci]
|
2026-05-12 14:48:50 +08:00 |
|
Your Name
|
1a74286dfa
|
fix(awooop): mirror ops notifications through api
Code Review / ai-code-review (push) Successful in 10s
|
2026-05-12 14:43:09 +08:00 |
|
AWOOOI CD
|
b437a33043
|
chore(cd): deploy 03ba967 [skip ci]
|
2026-05-12 14:31:32 +08:00 |
|
Your Name
|
03ba9678d5
|
fix(awooop): label cicd outbound timeline
Code Review / ai-code-review (push) Successful in 11s
CD Pipeline / tests (push) Successful in 1m3s
CD Pipeline / build-and-deploy (push) Successful in 4m1s
CD Pipeline / post-deploy-checks (push) Successful in 1m26s
|
2026-05-12 14:26:29 +08:00 |
|
Your Name
|
d74beb2176
|
fix(ci): prevent docker lock self match
Code Review / ai-code-review (push) Successful in 11s
|
2026-05-12 14:21:57 +08:00 |
|
AWOOOI CD
|
f824308b6a
|
chore(cd): deploy cb7151c [skip ci]
|
2026-05-12 06:12:20 +00:00 |
|
Your Name
|
cb7151cc27
|
fix(awooop): set shadow run defaults for mirrors
Code Review / ai-code-review (push) Successful in 10s
CD Pipeline / tests (push) Successful in 1m5s
CD Pipeline / build-and-deploy (push) Successful in 10m20s
CD Pipeline / post-deploy-checks (push) Successful in 2m33s
|
2026-05-12 14:01:03 +08:00 |
|
Your Name
|
ad8ead2546
|
fix(awooop): route ci notifications through event mirror
Code Review / ai-code-review (push) Successful in 14s
CD Pipeline / tests (push) Successful in 1m18s
CD Pipeline / post-deploy-checks (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-05-12 13:58:08 +08:00 |
|
AWOOOI CD
|
d356cd32fc
|
chore(cd): deploy 80c36ba [skip ci]
|
2026-05-07 19:00:45 +08:00 |
|
Your Name
|
80c36ba801
|
fix(incident): F2 NO_ACTION 觸發 resolve_incident + 冪等 guard
Code Review / ai-code-review (push) Successful in 11s
CD Pipeline / tests (push) Successful in 1m9s
CD Pipeline / build-and-deploy (push) Successful in 3m29s
CD Pipeline / post-deploy-checks (push) Successful in 1m30s
【根因】INC-20260507-99ADF2 飛輪斷流,566+ stuck incidents(30秒漲 1)核心
原因:NO_ACTION 路徑 (approval_execution.py:251) 提前 return True,跳過
line 482-495 已有的 resolve_incident 呼叫,incident 永遠卡 INVESTIGATING。
【修法】
- approval_execution.py NO_ACTION 分支補 resolve_incident 呼叫 + 成功/失敗
log,背景 log 加 path="no_action" 用於 prod 量化修法生效率(debugger
全鏈分析 + critic 1st/2nd 審查必修 #1)。
- incident_service.py resolve_incident 在 line 1106 加 RESOLVED 冪等 guard,
早於所有副作用(status mutation / Redis / DB / postmortem / KB / KM /
disposition),順帶修 success path line 482-495 重觸 postmortem 的潛在
老風險(critic 必修 #2)。
【遵守 Codex 5/6 設計(feedback_respect_codex_design_intent.md)】
- 不動 flywheel_stats_service.py / heartbeat_report_service.py /
auto_repair_service.record_auto_repair() / metrics_repository UPPER(status)。
- resolve_incident 不寫 auto_repair_executions 表(Codex 5/6 source of
truth),不污染 24h KPI 計算。
【Test 覆蓋】
- test_approval_execution_no_action.py:NO_ACTION → resolve 被呼叫一次 +
resolve raise 時仍 return True(NO_ACTION 不能因 resolve 失敗退化成 False,
否則污染 auto_execute KPI line 207-208 註解契約)。
- test_incident_service_resolve_idempotency.py:RESOLVED → return existing +
save_to_working_memory 不被呼叫;not_found → return None。
【驗收條件(部署後 24h)】
1. grep `path="no_action"` 中 incident_resolved_after_no_action_execution
數量 vs background_execution_noop 數量,1:1 才算修復成功。
2. awoooi_flywheel_incidents_stuck 從每 30 秒漲 1 變平緩。
3. SRE 群 24h 內若湧入 >20 份 NO_ACTION postmortem 觸發 follow-up 評估
resolution_type="no_action" 跳過 postmortem(critic Minor #3 方案 B)。
Refs: INC-20260507-99ADF2, debugger root cause #1 (鏈 A), critic 1st 必修
#1 #2, critic 2nd 必修 #1 #2 #3
Co-Authored-By: Codex (aider) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-07 18:55:58 +08:00 |
|
AWOOOI CD
|
afb5f9556e
|
chore(cd): deploy b3dc41f [skip ci]
|
2026-05-07 15:37:50 +08:00 |
|
Your Name
|
b3dc41fcd4
|
fix(metrics): 串入飛輪指標到 /metrics 主端點,修復 FlywheelExecutionRateMissing 死告警
Code Review / ai-code-review (push) Successful in 12s
CD Pipeline / tests (push) Successful in 1m3s
CD Pipeline / build-and-deploy (push) Successful in 3m28s
CD Pipeline / post-deploy-checks (push) Successful in 1m21s
INC-20260507-99ADF2 根因(feedback_full_chain_first_then_fix.md 全鏈分析):
【鏈路斷點】規則層(5/3 加)vs 指標層(5/6 改)vs scrape 層(從沒同步)
- 577250a6(5/3)「反消音化」commit 加了 FlywheelExecutionRateMissing
rule,要求 110 Prom scrape 到 awoooi_flywheel_execution_success_rate;
- a2c4b3d4(5/6)Codex 改 FlywheelStatsService 用 auto_repair_executions
作 source of truth(24h 樣本 1-9 筆回 None 給 W-3b watchdog 接管);
- 但 awoooi_flywheel_* 指標自始至終只在 /api/v1/stats/flywheel/metrics
暴露,110 Prom awoooi-api job 抓的是 /metrics → absent() 永遠 1
→ 自 2026-05-06T04:14 UTC 起 firing 26h+ 屬 dead alert
【修法】只動 awoooi-api 一處,不碰 Codex 設計、不碰 110 Prom 配置:
- main.py /metrics endpoint 改 async,在 generate_latest() 後串入
FlywheelStatsService.compute() → to_prometheus_lines()。
- 既有 awoooi-api scrape job 自動拿到飛輪指標。
- 完全保留 Codex a2c4b3d4 設計:1-9 筆回 None 讓 W-3b watchdog 雙保險。
【不碰的部分】
- flywheel_stats_service.py 不動:Codex 5/6 LOGBOOK 已明確說明
「Redis playbook counter 失準 → 用 auto_repair_executions 為唯一信任源」,
1-9 筆 return None 是配合 ai_slo_watchdog_job W-3b grace+30min 設計的
反消音化雙保險,不是 bug。
驗證計畫(部署後):
1. curl /metrics | grep awoooi_flywheel → 看到飛輪指標
2. Prom query awoooi_flywheel_execution_success_rate → 非空
3. ALERTS{alertname="FlywheelExecutionRateMissing"} → resolved
4. 30 分鐘觀察 Telegram 不再收 INC-20260507-99ADF2
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-07 15:33:04 +08:00 |
|
Your Name
|
c88d82f2ac
|
docs(logbook): record timeline label deploy [skip ci]
|
2026-05-07 10:48:24 +08:00 |
|
AWOOOI CD
|
395cf742b9
|
chore(cd): deploy 72d86ba [skip ci]
|
2026-05-07 10:44:52 +08:00 |
|
Your Name
|
72d86ba70b
|
fix(awooop): label outbound timeline events
Code Review / ai-code-review (push) Successful in 11s
CD Pipeline / tests (push) Successful in 1m7s
CD Pipeline / build-and-deploy (push) Successful in 3m31s
CD Pipeline / post-deploy-checks (push) Successful in 1m23s
|
2026-05-07 10:40:14 +08:00 |
|
Your Name
|
a26ccf8d80
|
docs(logbook): record capacity migration rollout [skip ci]
|
2026-05-07 10:35:55 +08:00 |
|
AWOOOI CD
|
77ef400598
|
chore(cd): deploy 32e8a04 [skip ci]
|
2026-05-07 10:33:09 +08:00 |
|
Your Name
|
08097f4070
|
fix(ci): harden migration audit logging
Code Review / ai-code-review (push) Successful in 11s
|
2026-05-07 10:32:41 +08:00 |
|
Your Name
|
32e8a045f4
|
fix(db): allow metric capacity violation types
Code Review / ai-code-review (push) Successful in 11s
run-migration / migrate (push) Failing after 9s
CD Pipeline / tests (push) Successful in 1m4s
CD Pipeline / build-and-deploy (push) Successful in 3m29s
CD Pipeline / post-deploy-checks (push) Successful in 1m28s
|
2026-05-07 10:28:33 +08:00 |
|
Your Name
|
814f5d8c6c
|
docs(logbook): record channel shadow run deploy [skip ci]
|
2026-05-07 10:21:23 +08:00 |
|
AWOOOI CD
|
4f0d677e18
|
chore(cd): deploy 5d38115 [skip ci]
|
2026-05-07 02:17:32 +00:00 |
|
Your Name
|
5d38115d2f
|
fix(awooop): anchor legacy channel events to shadow runs
Code Review / ai-code-review (push) Successful in 10s
CD Pipeline / tests (push) Successful in 1m13s
CD Pipeline / build-and-deploy (push) Successful in 4m9s
CD Pipeline / post-deploy-checks (push) Successful in 1m20s
|
2026-05-07 10:12:52 +08:00 |
|
Your Name
|
200b760512
|
docs(logbook): record approval timeline deploy [skip ci]
|
2026-05-07 10:09:42 +08:00 |
|
AWOOOI CD
|
83f4ab0dad
|
chore(cd): deploy 2df36b1 [skip ci]
|
2026-05-07 10:06:30 +08:00 |
|