Axiomancer
Changelog

Week of June 28–July 4, 2026

Weekly recap of June 28–July 4, 2026 — Overwatch makes worldwide AIS coverage safe with throttled background processing.

Week of June 28–July 4, 2026Overwatch

This week at a glance

Quiet week focused on one big lift: Overwatch's AIS worker is now ready for worldwide vessel coverage. Flipping AISSTREAM_GLOBAL=1 used to mean subscribing to ~175K vessels with the same write path used for a few thousand — enough to overwhelm the database. The worker now separates in-zone traffic (unchanged, full history and analytics) from out-of-zone traffic, which flows through a per-vessel throttled buffer into the latest-known-position table that powers the live map. In-zone behavior is byte-for-byte identical, so nothing changes until you opt in.

Updates

  • Overwatch: Worldwide AIS coverage is now safe to enable. When AISSTREAM_GLOBAL=1 is on, positions inside your monitored port and chokepoint boxes keep their full pipeline — position history, dark-event detection, course-anomaly flags, and other analytics all run exactly as before. Positions outside those zones become map-only data: they refresh the last-known vessel state that feeds the live map's worldwide layer, but they no longer write per-position history rows or trigger analytics side-effects. Vessels are still marked "seen" everywhere they broadcast, so a vessel that transits ocean and then re-enters a monitored zone doesn't produce a false dark-event gap.
  • Overwatch: New tuning knobs on the AIS worker for global mode — GLOBAL_BACKGROUND_MIN_INTERVAL_S (minimum seconds between writes per out-of-zone vessel, default 600), GLOBAL_BACKGROUND_FLUSH_MS (buffer flush cadence, default 30s), GLOBAL_BACKGROUND_UPSERT_CHUNK (rows per write, default 500), STATIC_DATA_DB_MIN_INTERVAL_S (Type 5 static-data write throttle, default 6h), MMSI_RECOVERY_RETRY_S (unknown-MMSI recovery throttle, default 30 min), and AIS_MAX_STUBBED_IMOS (stub-vessel cache size, default 300,000). Defaults are tuned for the ~175K-vessel global fleet; leave them alone unless you have a reason to change them. See AIS coverage for the setup.

Fixes

  • Overwatch: The AIS worker's feed-stall watchdog now counts out-of-zone background writes when global coverage is on. Previously it only counted in-zone position ingestion, so a stretch of purely out-of-zone traffic (common in global mode) could be misread as a stalled feed and force-restart a healthy worker.
  • Overwatch: A transient database error during unknown-vessel lookup or static-data ingestion no longer silences retries for the full throttle window. Failed attempts release the throttle immediately, so the next incoming message for the same vessel triggers a fresh try instead of waiting 30 minutes (unknown-MMSI recovery) or 6 hours (static data).

On this page