Skip to main content

Geographic intelligence

Geo terminal

Pick a mission. The map, filters, window and workflows follow it. Every layer states its source and freshness; missing data is shown as missing, never as zero.

status pending Classic 3D globe
Mission

Loading country outlines…

Crisis & political instability map — Belize. Layers: Country activity vs baseline, Active anomalies, Geolocated signals, Active situations.

On the map

  • Country activity vs baselineunknown
    • Severe vs baseline (mature baseline only)
    • Elevated vs baseline
    • Within normal range
    • Quiet / warming-up baseline / coverage gap
    • No signals recorded in window
    • Approximate: dashed ring at the capital where no 1:110m outline exists (SG, HK, BH…)

    signals per window (count) vs 30-day median

  • Active anomaliesunknown
    • Severity ≥ 7
    • Severity ≥ 5
    • Severity < 5

    severity 0–10 (deviation strength, not probability)

  • Geolocated signalsunknown
    • Place-level location
    • Approximate (region/city centroid): dashed ring
    • Country-level only: outline, no dot

    signal (one report cluster per point)

  • Active situationsunknown
    • Country involved in an active situation

    situation (country outline)

Boundaries: Natural Earth 1:110m, neutral de-facto cartography; dashed outlines are provisional. No sovereignty claim.

Window & replay

unknown

Active situations · Belize

unknown

Loading situations…

Chronological evidence · Belize

0 items

Loading signals…

Advanced: layer catalog (18 layers)

Layer catalog

Every layer states its source, how freshness is judged, what it covers, its unit, and what it shows when there is no data. No layer renders missing data as zero.

  • Country activity vs baseline

    map layer · GET /api/v1/geo-summary?hours=N

    Source:
    Mosaic signals (Redis snapshot)
    Coverage:
    Countries with ≥1 non-backfill signal in the window; deviation vs trailing 30-day median. Absence is not proof of calm.
    Unit:
    signals per window (count) vs 30-day median
    Freshness:
    live ≤ 120 min (signal_freshness default ingest age); stale > 240 min (deviation FRESH_DOWN_MIN)
    No data:
    outline only — No signals recorded for this country in the window — drawn as an outline, not as a low value.
    • Severe vs baseline (mature baseline only)
    • Elevated vs baseline
    • Within normal range
    • Quiet / warming-up baseline / coverage gap
    • No signals recorded in window
    • Approximate: dashed ring at the capital where no 1:110m outline exists (SG, HK, BH…)
    unknown
  • Strategic zones

    map layer · GET /api/v1/geo/zones

    Source:
    Mosaic (lib/zones.js + anomalies + AIS/ADS-B)
    Coverage:
    Six watched chokepoints (Hormuz, Bab el-Mandeb, N. Red Sea/Suez, Black Sea, Taiwan Strait, Malacca). Sensor counts are a 60-minute window.
    Unit:
    active anomalies (count); vessels / aircraft seen in 60 min (count)
    Freshness:
    source carries no observation time: unknown when data exists, no_data when empty
    No data:
    hidden + notice — Zone rollup unavailable — zones are not drawn rather than drawn as clear.
    • Zone with active anomaly
    • Watched zone, no active anomaly
    unknown
  • Active anomalies

    map layer · GET /api/v1/anomalies

    Source:
    Mosaic anomalies worker (baseline deviations)
    Coverage:
    Active baseline deviations that pass the public eligibility gate; coverage-derived ones are suppressed while the baseline is invalid.
    Unit:
    severity 0–10 (deviation strength, not probability)
    Freshness:
    live ≤ 30 min (two 15-min detector cycles); stale > 240 min (FRESH_DOWN_MIN)
    No data:
    explicit message — No active anomalies passed eligibility — this is a statement about detectors, not a guarantee of calm.
    • Severity ≥ 7
    • Severity ≥ 5
    • Severity < 5
    unknown
  • Geolocated signals

    map layer · GET /api/v1/geo/signals?hours=N

    Source:
    Mosaic signals (lib/geocode.js)
    Coverage:
    Non-backfill signals with a place or country; exact dots only for place-level geocodes.
    Unit:
    signal (one report cluster per point)
    Freshness:
    live ≤ 120 min (signal_freshness default ingest age); stale > 240 min (deviation FRESH_DOWN_MIN)
    No data:
    explicit message — No geolocated signals in this window and filter.
    • Place-level location
    • Approximate (region/city centroid): dashed ring
    • Country-level only: outline, no dot
    unknown
  • Active situations

    map layer · GET /api/v1/geo/situations-geo

    Source:
    Mosaic situations (published story clusters)
    Coverage:
    Published, active story situations with at least one country AND public live evidence in the last 7 days (newest evidence time — never a hidden, backfill or historical member, never creation or update time; withdrawn situations excluded). Drawn as country outlines, never as the synthetic jittered point.
    Unit:
    situation (country outline)
    Freshness:
    live ≤ 120 min (signal_freshness default ingest age); stale > 240 min (deviation FRESH_DOWN_MIN)
    No data:
    explicit message — No published situation with a country received evidence in the last 7 days.
    • Country involved in an active situation
    unknown
  • Hazards & incidents

    map layer · GET /api/v1/geo/live/events?hours=N

    Source:
    Mosaic signals (weather / quake / storm keywords)
    Coverage:
    Weather, quake, tsunami, cyclone and similar signals. Keyword-selected: not a complete hazard feed.
    Unit:
    incident report (country outline)
    Freshness:
    live ≤ 120 min (signal_freshness default ingest age); stale > 240 min (deviation FRESH_DOWN_MIN)
    No data:
    explicit message — No hazard reports in the window — not a statement that none occurred.
    • Country with a reported hazard
    unknown
  • Vessels (AIS)

    map layer · GET /api/v1/geo/live/vessels?minutes=60

    Source:
    AIS (Mosaic sensor_observations)
    Coverage:
    Receiver-dependent AIS around watched chokepoints. A missing vessel is not proof it went dark.
    Unit:
    vessel (last position in 60 min)
    Freshness:
    live ≤ 30 min (/geo/live default window); stale > 60 min (zones sensor window)
    No data:
    hidden + notice — No AIS positions in the last 60 minutes for this area.
    • Vessel last position
    unknown
  • Aircraft of interest (ADS-B)

    map layer · GET /api/v1/geo/live/aircraft?minutes=60

    Source:
    ADS-B (Mosaic sensor_observations)
    Coverage:
    Aircraft Mosaic tracks over areas of interest; not all air traffic.
    Unit:
    aircraft (last position in 60 min)
    Freshness:
    live ≤ 30 min (/geo/live default window); stale > 60 min (zones sensor window)
    No data:
    hidden + notice — No tracked aircraft in the last 60 minutes for this area.
    • Aircraft last position
    unknown
  • Cross-asset board

    workflow panel · GET /api/v1/markets

    Source:
    market_data (Yahoo poll, 5 min)
    Coverage:
    ~28 tracked symbols: indices, sectors, commodities, FX, bonds, crypto. Snapshot time is poll time.
    Unit:
    price (instrument currency) and % change on session
    Freshness:
    live ≤ 15 min (three 5-min market polls); stale > 24 h. Poll time, not exchange quote time
    No data:
    explicit message — Market snapshot unavailable — no prices are shown rather than stale zeros.
    • Up on session
    • Down on session
    unknown
  • Macro regime

    workflow panel · GET /api/v1/regime

    Source:
    regime_snapshots (FRED + market_data, 15 min)
    Coverage:
    US-centred regime read: VIX band, DXY trend, 2s10s curve, fed funds, WTI.
    Unit:
    VIX index level; DXY index; curve bps; rates %; WTI USD/bbl
    Freshness:
    live ≤ 30 min (two 15-min regime snapshots); stale > 24 h
    No data:
    explicit message — No regime snapshot recorded.
    • Regime label (descriptive)
    unknown
  • Country indices & FX

    workflow panel · GET /api/v1/country-markets/:code

    Source:
    Yahoo Finance chart API (cached)
    Coverage:
    Headline index and FX pair for ~30 mapped countries; other countries return none. Quote time is not carried.
    Unit:
    index level / FX rate and 1-day % change
    Freshness:
    source carries no observation time: unknown when data exists, no_data when empty
    No data:
    explicit message — No mapped market instruments for this country.
    • Up vs previous close
    • Down vs previous close
  • Sovereign & macro

    workflow panel · GET /api/v1/country-economy/:code

    Source:
    World Bank (annual), FRED (policy rate: US, 11 euro-area members; 10y), OEC
    Coverage:
    Annual macro indicators; policy rate only for the US (effective fed funds) and 11 euro-area members (ECB MRO), no series elsewhere; 10-year yield for 28 FRED-covered economies.
    Unit:
    % of GDP, %, USD — per indicator, with its reference year/date
    Freshness:
    annual statistical release: never live; reference year within 2 years = recent, older = stale
    No data:
    explicit message — Indicator not published for this country — omitted, never estimated.
    • Latest value with reference period
  • Economic calendar

    workflow panel · GET /api/v1/events/upcoming · /events/recent

    Source:
    ForexFactory calendar (econ_events)
    Coverage:
    Medium/high-impact releases for US, EU, GB, JP, CN, CA, AU, NZ, CH only.
    Unit:
    scheduled release (forecast / previous / actual as published)
    Freshness:
    source carries no observation time: unknown when data exists, no_data when empty
    No data:
    explicit message — No scheduled releases in the window for the covered economies.
    • High impact
    • Medium impact
  • OpenSky civil flights

    classic globe · GET /api/v1/geo/live/flights

    open globe
    Source:
    OpenSky Network (anonymous tier, cached 30 s)
    Coverage:
    Crowd-sourced ADS-B; densest over Europe/North America; capped at 1,800 aircraft.
    Unit:
    aircraft position
    Freshness:
    source carries no observation time: unknown when data exists, no_data when empty
    No data:
    hidden + notice — OpenSky unavailable or rate-limited — layer hidden, not shown as empty skies.
    • Airborne civil aircraft
  • Broad AIS shipping

    classic globe · GET /api/v1/geo/live/vessels

    open globe
    Source:
    AIS (Mosaic sensor_observations)
    Coverage:
    Wider live AIS traffic in monitored maritime zones; receiver gaps are common.
    Unit:
    vessel position
    Freshness:
    live ≤ 30 min (/geo/live default window); stale > 60 min (zones sensor window)
    No data:
    hidden + notice — No AIS positions — hidden, not drawn as empty sea.
    • Vessel position
  • Public webcams

    classic globe · static curated list (GlobeFilter)

    open globe
    Source:
    EarthCam / YouTube Live
    Coverage:
    A small curated set of public webcams; not an observation network.
    Unit:
    camera location
    Freshness:
    source carries no observation time: unknown when data exists, no_data when empty
    No data:
    hidden + notice — Curated list unavailable — hidden.
    • Webcam
  • ISS position

    classic globe · public orbital telemetry (GlobeFilter)

    open globe
    Source:
    wheretheiss.at
    Coverage:
    Sub-satellite point of the International Space Station.
    Unit:
    position
    Freshness:
    source carries no observation time: unknown when data exists, no_data when empty
    No data:
    hidden + notice — Telemetry unavailable — hidden.
    • ISS sub-satellite point
  • Zone sensor replay

    classic globe · GET /api/v1/geo/replay?zone=KEY

    open globe
    Source:
    AIS/ADS-B sensor_observations
    Coverage:
    Bucketed historical positions inside one strategic zone, up to 72 h.
    Unit:
    positions per time bucket
    Freshness:
    live ≤ 30 min (/geo/live default window); stale > 60 min (zones sensor window)
    No data:
    hidden + notice — No recorded positions for this zone and window.
    • Replayed position