{
  "title": "NAVTEX Review",
  "generated_at_utc": "2026-04-08T22:12:03.594494+00:00",
  "lookback_hours": 24,
  "focus_region": "Strait of Hormuz",
  "focus_hit_count": 0,
  "message_count": 109,
  "latest_reception": "2026-04-08 23:55:11",
  "source_url": "https://navtex.lv/",
  "stale_issue_filtered_count": 51,
  "max_notice_age_hours": 24,
  "overview": {
    "message_count": 109,
    "counts_by_code": {
      "T": 35,
      "G": 31,
      "S": 16,
      "E": 8,
      "V": 7,
      "F": 2,
      "D": 2,
      "W": 2,
      "L": 1,
      "M": 1,
      "U": 1,
      "Q": 1,
      "P": 1,
      "O": 1
    },
    "counts_by_area": {
      "T": 35,
      "G": 31,
      "S": 16,
      "E": 8,
      "V": 7,
      "F": 2,
      "D": 2,
      "W": 2,
      "L": 1,
      "M": 1,
      "U": 1,
      "Q": 1,
      "P": 1,
      "O": 1
    },
    "keyword_counts": {
      "fog": 11,
      "gale": 6,
      "warning": 5,
      "exercise": 3,
      "ais": 2
    },
    "station_coverage": {
      "resolved_message_count": 66,
      "unresolved_message_count": 43,
      "resolved_station_count": 8,
      "station_rows": [
        {
          "key": "oostende",
          "code": "T",
          "station_name": "Oostende Radio",
          "country": "Belgium",
          "nav_area": "I",
          "latitude": 51.1825,
          "longitude": 2.8078,
          "coverage_label": "Belgian coast and southern North Sea",
          "message_count": 20,
          "basis": "station-signature",
          "matched_terms": [
            "OOSTENDE",
            "OOSTENDERADIO"
          ]
        },
        {
          "key": "cullercoats",
          "code": "G",
          "station_name": "Cullercoats",
          "country": "United Kingdom",
          "nav_area": "I",
          "latitude": 55.0747,
          "longitude": -1.4632,
          "coverage_label": "North Sea and north-east UK coast",
          "message_count": 19,
          "basis": "station-signature",
          "matched_terms": [
            "HUMBER"
          ]
        },
        {
          "key": "pinneberg",
          "code": "S",
          "station_name": "Pinneberg",
          "country": "Germany",
          "nav_area": "I",
          "latitude": 53.675,
          "longitude": 9.8083,
          "coverage_label": "German Bight and German North Sea",
          "message_count": 15,
          "basis": "station-signature",
          "matched_terms": [
            "NCC HAMBURG"
          ]
        },
        {
          "key": "oostende_thames",
          "code": "V",
          "station_name": "Oostende (Thames Approaches relay)",
          "country": "Belgium / United Kingdom",
          "nav_area": "I",
          "latitude": 51.1825,
          "longitude": 2.8078,
          "coverage_label": "Thames approaches and Dover approaches",
          "message_count": 5,
          "basis": "station-signature",
          "matched_terms": [
            "THAMES"
          ]
        },
        {
          "key": "niton",
          "code": "E",
          "station_name": "Niton",
          "country": "United Kingdom",
          "nav_area": "I",
          "latitude": 50.5863,
          "longitude": -1.2545,
          "coverage_label": "English Channel and western approaches",
          "message_count": 3,
          "basis": "regional-context",
          "matched_terms": [
            "WIGHT",
            "LUNDY",
            "PORTLAND"
          ]
        },
        {
          "key": "cross_la_garde",
          "code": "W",
          "station_name": "CROSS La Garde",
          "country": "France",
          "nav_area": "III",
          "latitude": 43.1043,
          "longitude": 5.9915,
          "coverage_label": "Provence, Ligurian Sea and western Mediterranean",
          "message_count": 2,
          "basis": "station-signature",
          "matched_terms": [
            "AVURNAV TOULON"
          ]
        },
        {
          "key": "split",
          "code": "Q",
          "station_name": "Split",
          "country": "Croatia",
          "nav_area": "III",
          "latitude": 43.1757,
          "longitude": 16.423,
          "coverage_label": "Adriatic Sea",
          "message_count": 1,
          "basis": "station-signature",
          "matched_terms": [
            "SPLIT RADIO"
          ]
        },
        {
          "key": "mondolfo",
          "code": "U",
          "station_name": "Mondolfo",
          "country": "Italy",
          "nav_area": "III",
          "latitude": 43.7418,
          "longitude": 13.1388,
          "coverage_label": "Adriatic Sea and central Italian coast",
          "message_count": 1,
          "basis": "station-signature",
          "matched_terms": [
            "MONDOLFO RADIO"
          ]
        }
      ],
      "code_rows": [
        {
          "code": "T",
          "message_count": 35,
          "resolved_station_names": [
            "Oostende Radio",
            "Pinneberg"
          ],
          "unresolved_message_count": 14
        },
        {
          "code": "G",
          "message_count": 31,
          "resolved_station_names": [
            "Cullercoats"
          ],
          "unresolved_message_count": 12
        },
        {
          "code": "S",
          "message_count": 16,
          "resolved_station_names": [
            "Pinneberg"
          ],
          "unresolved_message_count": 2
        },
        {
          "code": "E",
          "message_count": 8,
          "resolved_station_names": [
            "Niton"
          ],
          "unresolved_message_count": 5
        },
        {
          "code": "V",
          "message_count": 7,
          "resolved_station_names": [
            "Oostende (Thames Approaches relay)"
          ],
          "unresolved_message_count": 2
        },
        {
          "code": "F",
          "message_count": 2,
          "resolved_station_names": [],
          "unresolved_message_count": 2
        },
        {
          "code": "D",
          "message_count": 2,
          "resolved_station_names": [],
          "unresolved_message_count": 2
        },
        {
          "code": "W",
          "message_count": 2,
          "resolved_station_names": [
            "CROSS La Garde"
          ],
          "unresolved_message_count": 0
        },
        {
          "code": "L",
          "message_count": 1,
          "resolved_station_names": [],
          "unresolved_message_count": 1
        },
        {
          "code": "M",
          "message_count": 1,
          "resolved_station_names": [],
          "unresolved_message_count": 1
        },
        {
          "code": "U",
          "message_count": 1,
          "resolved_station_names": [
            "Mondolfo"
          ],
          "unresolved_message_count": 0
        },
        {
          "code": "Q",
          "message_count": 1,
          "resolved_station_names": [
            "Split"
          ],
          "unresolved_message_count": 0
        },
        {
          "code": "P",
          "message_count": 1,
          "resolved_station_names": [],
          "unresolved_message_count": 1
        },
        {
          "code": "O",
          "message_count": 1,
          "resolved_station_names": [],
          "unresolved_message_count": 1
        }
      ],
      "station_reference_source_label": "ITU List IV coast station table (2025)",
      "station_reference_source_url": "https://www.itu.int/en/ITU-R/terrestrial/mars/Documents/ListIV_User%20Guide%20and%20Reference%20Tables_2025.pdf",
      "global_map_source_label": "WMO NAVTEX stations map",
      "global_map_source_url": "https://wmo.int/navtex-stations"
    }
  },
  "sections": {
    "executive_summary": [
      "The window contains 109 messages; dominant B1 codes were T (35), G (31), S (16); keyword concentration led by fog (11), gale (6), warning (5), exercise (3).",
      "[EA22] navigational warning for United Kingdom - English Channel and western approaches. Readable text reports a fog signal outage near 50-39.7N 001-35.5W. Decoding is partial rather than complete.",
      "[EA27] navigational warning for Unresolved B1 code E. Readable text says: Lavernock spit buoy 51-23.0n 003-10.8w unlit. Decoding is partial rather than complete.",
      "[EA46] navigational warning for Unresolved B1 code E. Readable text says: South cardinal buoy 50-01.2n 005-40.4w unlit.",
      "No direct mentions were found in this corpus window."
    ],
    "main_developments": [
      "[EA22] navigational warning for United Kingdom - English Channel and western approaches. Readable text reports a fog signal outage near 50-39.7N 001-35.5W. Decoding is partial rather than complete.",
      "[EA27] navigational warning for Unresolved B1 code E. Readable text says: Lavernock spit buoy 51-23.0n 003-10.8w unlit. Decoding is partial rather than complete.",
      "[EA46] navigational warning for Unresolved B1 code E. Readable text says: South cardinal buoy 50-01.2n 005-40.4w unlit.",
      "[EA54] navigational warning for Unresolved B1 code E. Readable text says: Coningbeg buoy 52-03.2n 006-38.6w off sthfz nnnn.",
      "[EA56] navigational warning for Unresolved B1 code E. Readable text says: Casquets light 49-43.3n 002-22.6w racon inzppyhf. Decoding is partial rather than complete.",
      "[EE12] weather forecast for United Kingdom - English Channel and western approaches. This is a weather bulletin; readable sections mention gales, fog, ice across the covered waters. Decoding is partial rather than complete.",
      "[DA52] navigational warning for Unresolved B1 code D. Readable text says: Navigational warning no. 15/2026. Decoding is partial rather than complete.",
      "[DA50] navigational warning for Unresolved B1 code D. Readable text says: Navigational warning no. 1157ueo mmmmmmmmmmmmmmmmmmmmmlrwg egclgclp ps gu p. Decoding is partial rather than complete."
    ],
    "weather_and_sea_state": [
      "[EA22] navigational warning for United Kingdom - English Channel and western approaches. Readable text reports a fog signal outage near 50-39.7N 001-35.5W. Decoding is partial rather than complete.",
      "[EE12] weather forecast for United Kingdom - English Channel and western approaches. This is a weather bulletin; readable sections mention gales, fog, ice across the covered waters. Decoding is partial rather than complete.",
      "[unknown] operational notice for Unresolved B1 code T. Readable text says: To 15 tonight gale fm s 10 to 15 tomorrow fternoon gaz f 9 t 14 z zy z p. Decoding is partial rather than complete.",
      "[VA63] navigational warning for Belgium / United Kingdom - Thames approaches and Dover approaches. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
      "[UE49] weather forecast for Italy - Adriatic Sea and central Italian coast. This is a weather bulletin; readable sections mention thunderstorms, gales across the covered waters. Decoding is partial rather than complete."
    ],
    "navigation_and_safety_alerts": [
      "[EA22] navigational warning for United Kingdom - English Channel and western approaches. Readable text reports a fog signal outage near 50-39.7N 001-35.5W. Decoding is partial rather than complete.",
      "[EA27] navigational warning for Unresolved B1 code E. Readable text says: Lavernock spit buoy 51-23.0n 003-10.8w unlit. Decoding is partial rather than complete.",
      "[EA46] navigational warning for Unresolved B1 code E. Readable text says: South cardinal buoy 50-01.2n 005-40.4w unlit.",
      "[EA54] navigational warning for Unresolved B1 code E. Readable text says: Coningbeg buoy 52-03.2n 006-38.6w off sthfz nnnn.",
      "[EA56] navigational warning for Unresolved B1 code E. Readable text says: Casquets light 49-43.3n 002-22.6w racon inzppyhf. Decoding is partial rather than complete.",
      "[EE12] weather forecast for United Kingdom - English Channel and western approaches. This is a weather bulletin; readable sections mention gales, fog, ice across the covered waters. Decoding is partial rather than complete.",
      "[DA52] navigational warning for Unresolved B1 code D. Readable text says: Navigational warning no. 15/2026. Decoding is partial rather than complete.",
      "[DA50] navigational warning for Unresolved B1 code D. Readable text says: Navigational warning no. 1157ueo mmmmmmmmmmmmmmmmmmmmmlrwg egclgclp ps gu p. Decoding is partial rather than complete."
    ],
    "electronic_interference_and_navigation_integrity": [
      "[EA22] navigational warning for United Kingdom - English Channel and western approaches. Readable text reports a fog signal outage near 50-39.7N 001-35.5W. Decoding is partial rather than complete.",
      "[GA02] navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage. Decoding is partial rather than complete.",
      "[unknown] operational notice for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative. Decoding is partial rather than complete.",
      "[VA63] navigational warning for Unresolved B1 code V. Readable text reports a fog signal outage. Decoding is partial rather than complete."
    ],
    "special_operations_and_military_activity": [
      "[WA50] navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text says: Provence - sardaigne. Decoding is partial rather than complete.",
      "[TA30] navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Moflitary exercises with use of red flares. Decoding is partial rather than complete.",
      "[TA30] navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Will conduct litary exercises with usevo d flares. Decoding is partial rather than complete."
    ],
    "focus_region": [
      "No direct mentions were found in this corpus window."
    ],
    "confidence_and_gaps": [
      "Decode quality across the window was high=19, medium=40, low=50.",
      "51 older rebroadcast notices were removed because their internal issue times predated the 24-hour operating window.",
      "Published timestamps reflect reception time in the received corpus, not necessarily original notice issue time.",
      "Repeated or rebroadcast notices can persist inside the rolling window; message IDs are retained for traceability.",
      "50 messages were classified as low decode quality and may contain damaged titles or coordinates."
    ]
  }
}