Files
worldmonitor/scripts
Elie Habib b52916b7e3 fix(health): adjust gdeltIntel maxStaleMin for 6h cron; warn on expired-key EXPIRE no-op (#1853)
* fix(health): adjust gdeltIntel maxStaleMin for 6h cron; fix silent EXPIRE no-op on expired keys

- gdeltIntel maxStaleMin: 150 → 420 (6h cron + 1h grace). The 150 threshold was
  calibrated for the old 2h cron — with 6h intervals it fires STALE throughout
  most of each cycle, masking the signal entirely.

- _seed-utils extendExistingTtl: EXPIRE returns 0 (no-op) on expired/missing keys,
  but the log always said "Extended TTL on N key(s)" regardless. Added per-result
  checking: keys that returned 0 now emit a WARNING so the death-spiral condition
  (validate fails + key expired + EXPIRE is silently a no-op) is visible in logs
  rather than silently passing as if TTL was extended.

* fix(seed-health): align gdelt-intel intervalMin to 210 (420min maxStaleMin / 2)

Codex flagged mismatch: health.js allows 420min before flagging gdelt-intel
stale, but seed-health.js still used intervalMin: 150 (flags after 300min).
Ops tooling monitoring seed-health would generate spurious alerts for most
of each 6h cron cycle. Align to 210min per the maxStaleMin/2 convention.
2026-03-19 08:33:14 +04:00
..