diff --git a/apps/web/messages/en.json b/apps/web/messages/en.json index 4338252cd..1984781d7 100644 --- a/apps/web/messages/en.json +++ b/apps/web/messages/en.json @@ -2230,6 +2230,7 @@ "allZero": "全 0 需追查,不能當健康。", "sourceOk": "資料源 {ok}/{total} 可讀。", "noSignal": "告警與處置統計同時為 0。", + "incidentGap": "事件統計 API 尚未接入 public read model。", "alertSignal": "已讀取告警統計來源。", "aiHandoff": "AI / 冷啟動接手 {auto}/{total}。", "noSend": "Telegram 實發 0;自動優化 {optimization}。" diff --git a/apps/web/messages/zh-TW.json b/apps/web/messages/zh-TW.json index 4338252cd..1984781d7 100644 --- a/apps/web/messages/zh-TW.json +++ b/apps/web/messages/zh-TW.json @@ -2230,6 +2230,7 @@ "allZero": "全 0 需追查,不能當健康。", "sourceOk": "資料源 {ok}/{total} 可讀。", "noSignal": "告警與處置統計同時為 0。", + "incidentGap": "事件統計 API 尚未接入 public read model。", "alertSignal": "已讀取告警統計來源。", "aiHandoff": "AI / 冷啟動接手 {auto}/{total}。", "noSend": "Telegram 實發 0;自動優化 {optimization}。" diff --git a/apps/web/src/app/[locale]/reports/page.tsx b/apps/web/src/app/[locale]/reports/page.tsx index 0599f4210..58af4f46a 100644 --- a/apps/web/src/app/[locale]/reports/page.tsx +++ b/apps/web/src/app/[locale]/reports/page.tsx @@ -162,8 +162,8 @@ export default function ReportsPage({ params }: { params: { locale: string } }) setLoading(true) setError(false) Promise.all([ - fetchJson('/api/v1/stats/incidents/summary?days=30'), - fetchJson('/api/v1/stats/incidents/resolution?days=30'), + Promise.resolve(null as IncidentSummary | null), + Promise.resolve(null as ResolutionStats | null), fetchJson('/api/v1/stats/disposition'), fetchJson('/api/v1/agents/agent-report-status-board'), ]) @@ -293,8 +293,8 @@ export default function ReportsPage({ params }: { params: { locale: string } }) icon={} label={t('command.metrics.alerts')} value={incidentTotal || '--'} - detail={allZeroSignal ? t('command.details.noSignal') : t('command.details.alertSignal')} - tone={allZeroSignal ? 'warn' : 'neutral'} + detail={!sourceState.incident ? t('command.details.incidentGap') : allZeroSignal ? t('command.details.noSignal') : t('command.details.alertSignal')} + tone={!sourceState.incident || allZeroSignal ? 'warn' : 'neutral'} /> }