diff --git a/apps/api/src/api/v1/webhooks.py b/apps/api/src/api/v1/webhooks.py index e4948df8..556492ce 100644 --- a/apps/api/src/api/v1/webhooks.py +++ b/apps/api/src/api/v1/webhooks.py @@ -462,8 +462,8 @@ async def verify_webhook_signature( # generate_alert_fingerprint 已封裝為 AlertAnalyzer.generate_fingerprint (首席架構師 v1.2 2026-04-01 Asia/Taipei) -# 戰略 B: 滑動時間窗 (5 分鐘) -DEBOUNCE_WINDOW_MINUTES = 5 +# 戰略 B: 滑動時間窗 (ADR-073: 5 分鐘改 30 分鐘,防同一問題反覆重建 Incident,2026-04-12 ogt) +DEBOUNCE_WINDOW_MINUTES = 30 # ============================================================================= diff --git a/apps/api/src/repositories/incident_repository.py b/apps/api/src/repositories/incident_repository.py index 85620339..6ff69bb5 100644 --- a/apps/api/src/repositories/incident_repository.py +++ b/apps/api/src/repositories/incident_repository.py @@ -65,7 +65,13 @@ def _incident_to_record_data(incident: Incident) -> dict[str, Any]: "incident_id": incident.incident_id, "status": incident.status.value, "severity": incident.severity.value, - "signals": [s.model_dump() for s in incident.signals], + "signals": [ + { + **s.model_dump(), + "alertname": s.alert_name, # ADR-073: DB query 用 signals->0->>'alertname',補充 alias + } + for s in incident.signals + ], "affected_services": incident.affected_services, "proposal_ids": incident.proposal_ids, "created_at": incident.created_at, diff --git a/k8s/awoooi-prod/kustomization.yaml b/k8s/awoooi-prod/kustomization.yaml index 2b8adc39..e135dd02 100644 --- a/k8s/awoooi-prod/kustomization.yaml +++ b/k8s/awoooi-prod/kustomization.yaml @@ -38,7 +38,7 @@ resources: images: - name: 192.168.0.110:5000/library/api:IMAGE_TAG_PLACEHOLDER newName: 192.168.0.110:5000/awoooi/api - newTag: a86ecf32a2e7be70b2d130fbadd9e9ad655ea5e1 + newTag: 8be87b0f32a7430d86e93b9be63677c0e498bb79 - name: 192.168.0.110:5000/library/web:IMAGE_TAG_PLACEHOLDER newName: 192.168.0.110:5000/awoooi/web - newTag: a86ecf32a2e7be70b2d130fbadd9e9ad655ea5e1 + newTag: 8be87b0f32a7430d86e93b9be63677c0e498bb79