fix(health): treat empty intlDelays as OK, matching faaDelays (#3360)

intlDelays was alarming EMPTY_DATA during calm windows (seedAge 25m,
records 0) while its faaDelays sibling — written by the same aviation
seeder — was in EMPTY_DATA_OK_KEYS. The seeder itself declares
zeroIsValid: true (scripts/seed-aviation.mjs:1171) because 0 airport
disruptions is a real steady state, so the health classifier should
agree. Stale-seed degradation still kicks in once seedAge > 90min.
This commit is contained in:
Elie Habib
2026-04-24 07:11:56 +04:00
committed by GitHub
parent def94733a8
commit 6d4c717e75

View File

@@ -462,7 +462,7 @@ const ON_DEMAND_KEYS = new Set([
// no earnings events this week, econ calendar quiet between seasons).
// The key must still exist in Redis; only the record count can be 0.
const EMPTY_DATA_OK_KEYS = new Set([
'notamClosures', 'faaDelays', 'gpsjam', 'positiveGeoEvents', 'weatherAlerts',
'notamClosures', 'faaDelays', 'intlDelays', 'gpsjam', 'positiveGeoEvents', 'weatherAlerts',
'earningsCalendar', 'econCalendar', 'cotPositioning',
'usniFleet', // usniFleetStale covers the fallback; relay outages → WARN not CRIT
'newsThreatSummary', // only written when classify produces country matches; quiet news periods = 0 countries, no write