fix(budget): 偏差检查同 KPI 多计划去重(deviation-check 补 db.flush)

autoflush=False 下,check_budget_deviation 循环内 existing_alert 去重查询
查不到本次刚 add 未 flush 的行 → 同期间同 KPI 多 active 预算计划会重复告警。
add 后补 db.flush() 使其对下一次循环可见。附回归测试。

Ref: yanxue-20260914-budget-p13p14-activation 遗留②试跑发现的缺陷
This commit is contained in:
Hermes CI Fix
2026-09-14 17:56:26 +08:00
parent 40d522cd34
commit ec58efa20b
2 changed files with 31 additions and 0 deletions
+3
View File
@@ -908,6 +908,9 @@ def check_budget_deviation(
)
db.add(alert)
alerts_generated += 1
# 立即 flush:autoflush=False 下,下一次循环的同 KPI 去重查询
# (existing_alert) 需看到本次已 add 的行,否则同期间同 KPI 多预算计划会重复告警
db.flush()
alerts.append({
"kpi_id": bp.kpi_id,