{"meta":{"path":"transits/backfill_status","ts":"2026-10-15T16:10:40+00:00","status":"ok","rows":79,"request_id":"42e659f7897c3cd1"},"data":{"generated_at":"2026-10-15T16:10:43+00:00","queue":{"status":"completed","started_at":"2026-06-05T09:47:01+00:00","updated_at":"2026-06-05T09:47:02+00:00","finished_at":"2026-06-05T09:47:02+00:00","pid":7403,"waterways":"suez panama bosphorus gibraltar malacca","window_days":7,"chunk_days":2,"passes_per_waterway":6,"max_waterways_per_run":1,"processed_waterways":0,"done_waterways":5,"lock_file":"/tmp/topos_waterway_history_backfill.lock","state_dir":"/var/www/shipinfo.net/topos/data/processed/transits","note":"queue_end","runtime_band":"quiet","updated_age_hours":3174.39,"plan":{"ordered_waterways":["suez","panama","bosphorus","gibraltar","malacca"],"items":[{"waterway_id":"suez","name":"Suez Canal","status":"done","remaining_windows":0,"first_day":"2024-03-13","floor_day":"2024-03-13","eta_at":"","windows_per_hour":null,"projected_start_at":"","projected_finish_at":""},{"waterway_id":"panama","name":"Panama Canal","status":"done","remaining_windows":0,"first_day":"2024-03-13","floor_day":"2024-03-13","eta_at":"","windows_per_hour":null,"projected_start_at":"","projected_finish_at":""},{"waterway_id":"bosphorus","name":"Bosphorus Strait","status":"done","remaining_windows":0,"first_day":"2024-03-13","floor_day":"2024-03-13","eta_at":"","windows_per_hour":null,"projected_start_at":"","projected_finish_at":""},{"waterway_id":"gibraltar","name":"Strait of Gibraltar","status":"done","remaining_windows":0,"first_day":"2024-03-13","floor_day":"2024-03-13","eta_at":"","windows_per_hour":null,"projected_start_at":"","projected_finish_at":""},{"waterway_id":"malacca","name":"Strait of Malacca","status":"done","remaining_windows":0,"first_day":"2024-03-13","floor_day":"2024-03-13","eta_at":"","windows_per_hour":null,"projected_start_at":"","projected_finish_at":""}],"current_target":"","next_target":"","current_target_eta_at":"","next_target_start_at":"","baseline_windows_per_hour":null,"pending_waterways":[],"done_waterways_list":["suez","panama","bosphorus","gibraltar","malacca"],"total_items":5,"pending_count":0,"done_count":5,"completion_ratio":1,"pending_windows_total":0,"projected_queue_start_at":"","projected_queue_done_at":"","projected_queue_hours_remaining":null}},"summary":{"waterways":79,"events":2778351,"pending":5,"done":5,"with_history":79,"runtime_fresh":79,"runtime_stale":0,"charts_current":76,"charts_stale":3,"earliest_first_day":"2024-03-13","latest_last_run_at":"2026-06-05T09:47:02+00:00"},"rows":[{"waterway":{"waterway_id":"gibraltar","name":"Strait of Gibraltar","kind":"strait","config_version":"gibraltar_v1_20260312"},"history":{"first_day":"2024-03-13","last_day":"2026-10-15","event_count":183331},"daily":{"first_day":"2024-03-13","last_day":"2026-10-15","row_count":23899,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"gibraltar","detector_version":"v1_gateway_compact_sparse_utc","config_version":"gibraltar_v1_20260312","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:28:41","updated_at":"2026-10-15 14:28:41"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.7,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"done","floor_day":"2024-03-13","cursor_to_day":"2024-03-12","window_days":7,"chunk_days":2,"last_run_at":"2026-06-05T09:47:02+00:00","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":0,"remaining_windows":0,"target_span_days":946,"covered_target_days":946,"progress_ratio":1,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[{"captured_at":"2026-06-05T09:47:02+00:00","waterway_id":"gibraltar","passes_per_waterway":6,"status":"done","floor_day":"2024-03-13","min_day_after":"2024-03-13","last_from_day":"","last_to_day":"","last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"remaining_days":0,"remaining_windows":0}],"state_file":"data/processed/transits/history_backfill_gibraltar.json"}},{"waterway":{"waterway_id":"malacca","name":"Strait of Malacca","kind":"strait","config_version":"malacca_v1_20260312"},"history":{"first_day":"2024-03-13","last_day":"2026-10-15","event_count":148822},"daily":{"first_day":"2024-03-13","last_day":"2026-10-15","row_count":22943,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"malacca","detector_version":"v1_gateway_compact_sparse_utc","config_version":"malacca_v1_20260312","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:39:15","updated_at":"2026-10-15 15:39:15"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.52,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"done","floor_day":"2024-03-13","cursor_to_day":"2024-03-12","window_days":7,"chunk_days":2,"last_run_at":"2026-06-05T09:47:02+00:00","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":0,"remaining_windows":0,"target_span_days":946,"covered_target_days":946,"progress_ratio":1,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[{"captured_at":"2026-06-05T09:47:02+00:00","waterway_id":"malacca","passes_per_waterway":6,"status":"done","floor_day":"2024-03-13","min_day_after":"2024-03-13","last_from_day":"","last_to_day":"","last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"remaining_days":0,"remaining_windows":0}],"state_file":"data/processed/transits/history_backfill_malacca.json"}},{"waterway":{"waterway_id":"bosphorus","name":"Bosphorus Strait","kind":"strait","config_version":"bosphorus_v1_20260312"},"history":{"first_day":"2024-03-13","last_day":"2026-10-15","event_count":89254},"daily":{"first_day":"2024-03-13","last_day":"2026-10-15","row_count":18426,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"bosphorus","detector_version":"v1_gateway_compact_sparse_utc","config_version":"bosphorus_v1_20260312","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:29:28","updated_at":"2026-10-15 13:29:28"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.69,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"done","floor_day":"2024-03-13","cursor_to_day":"2024-03-12","window_days":7,"chunk_days":2,"last_run_at":"2026-06-05T09:47:02+00:00","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":0,"remaining_windows":0,"target_span_days":946,"covered_target_days":946,"progress_ratio":1,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[{"captured_at":"2026-06-05T09:47:02+00:00","waterway_id":"bosphorus","passes_per_waterway":6,"status":"done","floor_day":"2024-03-13","min_day_after":"2024-03-13","last_from_day":"","last_to_day":"","last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"remaining_days":0,"remaining_windows":0}],"state_file":"data/processed/transits/history_backfill_bosphorus.json"}},{"waterway":{"waterway_id":"suez","name":"Suez Canal","kind":"canal","config_version":"suez_v2_20260314_gateway_b_trim"},"history":{"first_day":"2024-03-13","last_day":"2026-10-14","event_count":41962},"daily":{"first_day":"2024-03-13","last_day":"2026-10-14","row_count":18093,"lag_days":1,"freshness":"current"},"runtime_state":{"waterway_id":"suez","detector_version":"v1_gateway_compact_sparse_utc","config_version":"suez_v2_20260314_gateway_b_trim","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:54:52","updated_at":"2026-10-15 10:54:52"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.26,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"done","floor_day":"2024-03-13","cursor_to_day":"2024-03-12","window_days":7,"chunk_days":2,"last_run_at":"2026-06-05T09:47:02+00:00","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":0,"remaining_windows":0,"target_span_days":945,"covered_target_days":945,"progress_ratio":1,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[{"captured_at":"2026-06-05T09:47:02+00:00","waterway_id":"suez","passes_per_waterway":6,"status":"done","floor_day":"2024-03-13","min_day_after":"2024-03-13","last_from_day":"","last_to_day":"","last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"remaining_days":0,"remaining_windows":0}],"state_file":"data/processed/transits/history_backfill_suez.json"}},{"waterway":{"waterway_id":"panama","name":"Panama Canal","kind":"canal","config_version":"panama_v1_20260312"},"history":{"first_day":"2024-03-13","last_day":"2026-10-15","event_count":34437},"daily":{"first_day":"2024-03-13","last_day":"2026-10-15","row_count":20193,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"panama","detector_version":"v1_gateway_compact_sparse_utc","config_version":"panama_v1_20260312","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:24:02","updated_at":"2026-10-15 10:24:02"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.78,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"done","floor_day":"2024-03-13","cursor_to_day":"2024-03-12","window_days":7,"chunk_days":2,"last_run_at":"2026-06-05T09:47:02+00:00","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":0,"remaining_windows":0,"target_span_days":946,"covered_target_days":946,"progress_ratio":1,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[{"captured_at":"2026-06-05T09:47:02+00:00","waterway_id":"panama","passes_per_waterway":6,"status":"done","floor_day":"2024-03-13","min_day_after":"2024-03-13","last_from_day":"","last_to_day":"","last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"remaining_days":0,"remaining_windows":0}],"state_file":"data/processed/transits/history_backfill_panama.json"}},{"waterway":{"waterway_id":"hormuz","name":"Strait of Hormuz","kind":"strait","config_version":"hormuz_v2_20260314"},"history":{"first_day":"2026-01-18","last_day":"2026-10-15","event_count":10629},"daily":{"first_day":"2026-01-18","last_day":"2026-10-15","row_count":4136,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"hormuz","detector_version":"v1_gateway_compact_sparse_utc","config_version":"hormuz_v2_20260314","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:43:51","updated_at":"2026-10-15 14:43:51"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.45,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"pending","floor_day":"2024-03-13","cursor_to_day":"2026-01-17","window_days":7,"chunk_days":2,"last_run_at":"2026-03-22T19:33:57+00:00","last_from_day":"2026-01-18","last_to_day":"2026-01-24","last_detected":502,"last_inserted":502,"last_updated":0,"last_attempted":0,"last_rows_written":163,"coverage_advanced":true,"dry_run":false,"remaining_days":676,"remaining_windows":97,"target_span_days":946,"covered_target_days":270,"progress_ratio":0.2854122621564482,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[{"captured_at":"2026-03-22T19:33:57+00:00","waterway_id":"hormuz","passes_per_waterway":6,"status":"pending","floor_day":"2024-03-13","min_day_after":"2026-01-18","last_from_day":"2026-01-18","last_to_day":"2026-01-24","last_inserted":502,"last_updated":0,"last_attempted":0,"last_rows_written":163,"coverage_advanced":true,"remaining_days":676,"remaining_windows":97}],"state_file":"data/processed/transits/history_backfill_hormuz.json"}},{"waterway":{"waterway_id":"bohai","name":"Bohai Strait","kind":"strait","config_version":"bohai_v1_20260314"},"history":{"first_day":"2026-02-13","last_day":"2026-10-15","event_count":149671},"daily":{"first_day":"2026-02-13","last_day":"2026-10-15","row_count":5773,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"bohai","detector_version":"v1_gateway_compact_sparse_utc","config_version":"bohai_v1_20260314","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:27:25","updated_at":"2026-10-15 13:27:25"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.72,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"pending","floor_day":"2024-03-13","cursor_to_day":"2026-03-13","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":702,"remaining_windows":101,"target_span_days":946,"covered_target_days":244,"progress_ratio":0.25792811839323465,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_bohai.json"}},{"waterway":{"waterway_id":"korea","name":"Korea Strait","kind":"strait","config_version":"korea_v1_20260314"},"history":{"first_day":"2026-02-13","last_day":"2026-10-15","event_count":34090},"daily":{"first_day":"2026-02-13","last_day":"2026-10-15","row_count":6029,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"korea","detector_version":"v1_gateway_compact_sparse_utc","config_version":"korea_v1_20260314","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:13:09","updated_at":"2026-10-15 15:13:09"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.96,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"pending","floor_day":"2024-03-13","cursor_to_day":"2026-03-13","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":702,"remaining_windows":101,"target_span_days":946,"covered_target_days":244,"progress_ratio":0.25792811839323465,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_korea.json"}},{"waterway":{"waterway_id":"taiwan","name":"Taiwan Strait","kind":"strait","config_version":"taiwan_v1_20260314"},"history":{"first_day":"2026-02-13","last_day":"2026-10-15","event_count":26535},"daily":{"first_day":"2026-02-13","last_day":"2026-10-15","row_count":5137,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"taiwan","detector_version":"v1_gateway_compact_sparse_utc","config_version":"taiwan_v1_20260314","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:06:53","updated_at":"2026-10-15 11:06:53"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.06,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"pending","floor_day":"2024-03-13","cursor_to_day":"2026-03-13","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":702,"remaining_windows":101,"target_span_days":946,"covered_target_days":244,"progress_ratio":0.25792811839323465,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_taiwan.json"}},{"waterway":{"waterway_id":"dover","name":"Strait of Dover","kind":"strait","config_version":"dover_v2_20260314"},"history":{"first_day":"2026-03-01","last_day":"2026-10-15","event_count":52884},"daily":{"first_day":"2026-03-01","last_day":"2026-10-15","row_count":5815,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"dover","detector_version":"v1_gateway_compact_sparse_utc","config_version":"dover_v2_20260314","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:08:13","updated_at":"2026-10-15 14:08:13"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.04,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"pending","floor_day":"2024-03-13","cursor_to_day":"2026-02-28","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":718,"remaining_windows":103,"target_span_days":946,"covered_target_days":228,"progress_ratio":0.24101479915433405,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_dover.json"}},{"waterway":{"waterway_id":"north_sea_central_gate","name":"North Sea Central Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step67"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":178596},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":5017,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"north_sea_central_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step67","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 16:08:58","updated_at":"2026-10-15 16:08:58"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.03,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_north_sea_central_gate.json"}},{"waterway":{"waterway_id":"singapore_malacca_piracy_watch","name":"Singapore-Malacca Piracy Watch","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":118567},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":5081,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"singapore_malacca_piracy_watch","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:47:22","updated_at":"2026-10-15 10:47:22"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.39,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_singapore_malacca_piracy_watch.json"}},{"waterway":{"waterway_id":"english_channel_west","name":"English Channel West","kind":"strait","config_version":"wave_b_seed_v1_manual_step53"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":91521},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4918,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"english_channel_west","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step53","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:22:04","updated_at":"2026-10-15 14:22:04"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.81,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_english_channel_west.json"}},{"waterway":{"waterway_id":"east_adriatic_gate","name":"East Adriatic Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step83"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":79091},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":2881,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"east_adriatic_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step83","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:11:47","updated_at":"2026-10-15 14:11:47"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.98,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_east_adriatic_gate.json"}},{"waterway":{"waterway_id":"kattegat","name":"Kattegat","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-01","last_day":"2026-10-15","event_count":75803},"daily":{"first_day":"2026-04-01","last_day":"2026-10-15","row_count":4695,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"kattegat","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:07:39","updated_at":"2026-10-15 15:07:39"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.05,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":197,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_kattegat.json"}},{"waterway":{"waterway_id":"danish_belts_west","name":"Danish Belts West","kind":"strait","config_version":"wave_b_seed_v1_manual_step53"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":61273},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4001,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"danish_belts_west","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step53","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:02:38","updated_at":"2026-10-15 14:02:38"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.13,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_danish_belts_west.json"}},{"waterway":{"waterway_id":"aegean_east_gate","name":"Aegean East Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step81"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":52543},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4642,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"aegean_east_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step81","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:36:45","updated_at":"2026-10-15 12:36:45"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.57,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_aegean_east_gate.json"}},{"waterway":{"waterway_id":"bay_of_biscay_gate","name":"Bay of Biscay Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step65"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":50587},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4843,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"bay_of_biscay_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step65","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:20:41","updated_at":"2026-10-15 13:20:41"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.83,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_bay_of_biscay_gate.json"}},{"waterway":{"waterway_id":"aegean_west_gate","name":"Aegean West Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step77"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":49364},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4224,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"aegean_west_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step77","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:47:33","updated_at":"2026-10-15 12:47:33"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.39,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_aegean_west_gate.json"}},{"waterway":{"waterway_id":"sicily_south_gate","name":"Sicily South Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step65"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":48369},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4685,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"sicily_south_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step65","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:42:42","updated_at":"2026-10-15 10:42:42"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.47,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_sicily_south_gate.json"}},{"waterway":{"waterway_id":"alboran_gate","name":"Alboran Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step57"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":46383},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4923,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"alboran_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step57","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:51:48","updated_at":"2026-10-15 12:51:48"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.32,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_alboran_gate.json"}},{"waterway":{"waterway_id":"norwegian_trench_gate","name":"Norwegian Trench Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step69"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":44988},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4430,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"norwegian_trench_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step69","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:20:49","updated_at":"2026-10-15 10:20:49"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.83,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_norwegian_trench_gate.json"}},{"waterway":{"waterway_id":"sicily_channel","name":"Sicily Channel","kind":"strait","config_version":"wave_b_seed_v1_manual_step51"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":42589},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4692,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"sicily_channel","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step51","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:37:43","updated_at":"2026-10-15 10:37:43"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.55,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_sicily_channel.json"}},{"waterway":{"waterway_id":"north_channel_gate","name":"North Channel Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step71"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":40945},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3679,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"north_channel_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step71","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 16:04:54","updated_at":"2026-10-15 16:04:54"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.1,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_north_channel_gate.json"}},{"waterway":{"waterway_id":"corsica_channel_gate","name":"Corsica Channel Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step77"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":40208},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3690,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"corsica_channel_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step77","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:57:57","updated_at":"2026-10-15 13:57:57"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.21,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_corsica_channel_gate.json"}},{"waterway":{"waterway_id":"adriatic_north_gate","name":"Adriatic North Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step73"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":40205},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4153,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"adriatic_north_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step73","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:29:22","updated_at":"2026-10-15 12:29:22"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.69,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_adriatic_north_gate.json"}},{"waterway":{"waterway_id":"sardinia_channel_gate","name":"Sardinia Channel Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step75"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":39227},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4794,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"sardinia_channel_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step75","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:28:36","updated_at":"2026-10-15 10:28:36"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.7,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_sardinia_channel_gate.json"}},{"waterway":{"waterway_id":"aegean_north_gate","name":"Aegean North Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step73"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":38675},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4605,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"aegean_north_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step73","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:40:15","updated_at":"2026-10-15 12:40:15"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.51,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_aegean_north_gate.json"}},{"waterway":{"waterway_id":"ligurian_gate","name":"Ligurian Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step71"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":38597},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3855,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"ligurian_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step71","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:27:10","updated_at":"2026-10-15 15:27:10"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.73,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_ligurian_gate.json"}},{"waterway":{"waterway_id":"west_tyrrhenian_gate","name":"West Tyrrhenian Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step79"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":36981},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3713,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"west_tyrrhenian_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step79","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:39:44","updated_at":"2026-10-15 11:39:44"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":4.52,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_west_tyrrhenian_gate.json"}},{"waterway":{"waterway_id":"balearic_north_gate","name":"Balearic North Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step77"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":34216},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4384,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"balearic_north_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step77","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:15:10","updated_at":"2026-10-15 13:15:10"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.93,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_balearic_north_gate.json"}},{"waterway":{"waterway_id":"ionian_north_gate","name":"Ionian North Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step75"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":32758},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4504,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"ionian_north_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step75","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:54:14","updated_at":"2026-10-15 14:54:14"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.27,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_ionian_north_gate.json"}},{"waterway":{"waterway_id":"west_africa_gate","name":"West Africa Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step61"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":32033},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4436,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"west_africa_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step61","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:31:53","updated_at":"2026-10-15 11:31:53"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":4.65,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_west_africa_gate.json"}},{"waterway":{"waterway_id":"central_med_east_gate","name":"Central Med East Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step73"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":30791},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4602,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"central_med_east_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step73","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:53:55","updated_at":"2026-10-15 13:53:55"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.28,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_central_med_east_gate.json"}},{"waterway":{"waterway_id":"tyrrhenian_gate","name":"Tyrrhenian Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step75"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":30467},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3742,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"tyrrhenian_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step75","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:21:34","updated_at":"2026-10-15 11:21:34"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":4.82,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_tyrrhenian_gate.json"}},{"waterway":{"waterway_id":"gulf_of_lions_gate","name":"Gulf of Lions Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step67"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":28285},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3783,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"gulf_of_lions_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step67","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:41:33","updated_at":"2026-10-15 14:41:33"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.49,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_gulf_of_lions_gate.json"}},{"waterway":{"waterway_id":"balearic_channel","name":"Balearic Channel","kind":"strait","config_version":"wave_b_seed_v1_manual_step55"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":28247},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4336,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"balearic_channel","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step55","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:09:24","updated_at":"2026-10-15 13:09:24"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.02,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_balearic_channel.json"}},{"waterway":{"waterway_id":"adriatic_mid_gate","name":"Adriatic Mid Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step81"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":28192},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4117,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"adriatic_mid_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step81","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:25:48","updated_at":"2026-10-15 12:25:48"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.75,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_adriatic_mid_gate.json"}},{"waterway":{"waterway_id":"west_ionian_gate","name":"West Ionian Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step79"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":28101},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4108,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"west_ionian_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step79","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:35:52","updated_at":"2026-10-15 11:35:52"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":4.58,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_west_ionian_gate.json"}},{"waterway":{"waterway_id":"skagerrak","name":"Skagerrak","kind":"strait","config_version":"skagerrak_v1_20260405"},"history":{"first_day":"2026-03-30","last_day":"2026-10-15","event_count":27478},"daily":{"first_day":"2026-03-30","last_day":"2026-10-15","row_count":4794,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"skagerrak","detector_version":"v1_gateway_compact_sparse_utc","config_version":"skagerrak_v1_20260405","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:50:35","updated_at":"2026-10-15 10:50:35"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.34,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":199,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_skagerrak.json"}},{"waterway":{"waterway_id":"cape_of_good_hope","name":"Cape of Good Hope","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-01","last_day":"2026-10-15","event_count":27143},"daily":{"first_day":"2026-04-01","last_day":"2026-10-15","row_count":4847,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"cape_of_good_hope","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:41:17","updated_at":"2026-10-15 13:41:17"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.49,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":197,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_cape_of_good_hope.json"}},{"waterway":{"waterway_id":"great_belt","name":"Great Belt","kind":"strait","config_version":"wave_b_seed_v1_manual_step51"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":25606},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4063,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"great_belt","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step51","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:31:30","updated_at":"2026-10-15 14:31:30"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.65,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_great_belt.json"}},{"waterway":{"waterway_id":"western_med_north_gate","name":"Western Med North Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step69"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":24996},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3792,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"western_med_north_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step69","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:26:18","updated_at":"2026-10-15 11:26:18"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":4.74,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_western_med_north_gate.json"}},{"waterway":{"waterway_id":"canary_gate","name":"Canary Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step59"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":24757},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4477,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"canary_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step59","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:33:44","updated_at":"2026-10-15 13:33:44"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.62,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_canary_gate.json"}},{"waterway":{"waterway_id":"levant_south_gate","name":"Levant South Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step57"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":23118},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4154,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"levant_south_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step57","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:23:47","updated_at":"2026-10-15 15:23:47"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.78,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_levant_south_gate.json"}},{"waterway":{"waterway_id":"dardanelles","name":"Dardanelles Strait","kind":"strait","config_version":"wave_b_seed_v1_20260407"},"history":{"first_day":"2026-04-01","last_day":"2026-10-15","event_count":21853},"daily":{"first_day":"2026-04-01","last_day":"2026-10-15","row_count":4327,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"dardanelles","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_20260407","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:05:50","updated_at":"2026-10-15 14:05:50"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.08,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":197,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_dardanelles.json"}},{"waterway":{"waterway_id":"aegean_south_gate","name":"Aegean South Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step55"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":21023},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4173,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"aegean_south_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step55","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:43:45","updated_at":"2026-10-15 12:43:45"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.45,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_aegean_south_gate.json"}},{"waterway":{"waterway_id":"gulf_of_aden_somali_basin","name":"Gulf of Aden & Somali Basin (Piracy Risk)","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":20555},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3790,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"gulf_of_aden_somali_basin","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:34:49","updated_at":"2026-10-15 14:34:49"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.6,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_gulf_of_aden_somali_basin.json"}},{"waterway":{"waterway_id":"ionian_south_gate","name":"Ionian South Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step55"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":20135},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4455,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"ionian_south_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step55","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:57:42","updated_at":"2026-10-15 14:57:42"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.22,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_ionian_south_gate.json"}},{"waterway":{"waterway_id":"adriatic_entrance","name":"Adriatic Entrance","kind":"strait","config_version":"wave_b_seed_v1_manual_step53"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":19992},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4084,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"adriatic_entrance","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step53","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:22:05","updated_at":"2026-10-15 12:22:05"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.81,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_adriatic_entrance.json"}},{"waterway":{"waterway_id":"morocco_offshore_gate","name":"Morocco Offshore Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step63"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":19738},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4261,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"morocco_offshore_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step63","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:49:58","updated_at":"2026-10-15 15:49:58"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.35,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_morocco_offshore_gate.json"}},{"waterway":{"waterway_id":"east_med_central_gate","name":"East Med Central Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step61"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":19223},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4250,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"east_med_central_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step61","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:16:53","updated_at":"2026-10-15 14:16:53"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.9,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_east_med_central_gate.json"}},{"waterway":{"waterway_id":"irish_approach_gate","name":"Irish Approach Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step67"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":18105},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4111,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"irish_approach_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step67","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:01:19","updated_at":"2026-10-15 15:01:19"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.16,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_irish_approach_gate.json"}},{"waterway":{"waterway_id":"levant_north_gate","name":"Levant North Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step59"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":17204},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4105,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"levant_north_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step59","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:20:27","updated_at":"2026-10-15 15:20:27"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.84,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_levant_north_gate.json"}},{"waterway":{"waterway_id":"ionian_central_gate","name":"Ionian Central Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step83"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":16875},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":4220,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"ionian_central_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step83","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:50:54","updated_at":"2026-10-15 14:50:54"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.33,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_ionian_central_gate.json"}},{"waterway":{"waterway_id":"iceland_approach_south","name":"Iceland Approach South","kind":"strait","config_version":"wave_b_seed_v1_manual_step69"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":16141},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":2523,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"iceland_approach_south","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step69","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:47:33","updated_at":"2026-10-15 14:47:33"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.39,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_iceland_approach_south.json"}},{"waterway":{"waterway_id":"sicilian_approach_west","name":"Sicilian Approach West","kind":"strait","config_version":"wave_b_seed_v1_manual_step81"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":15645},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3794,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"sicilian_approach_west","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step81","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 10:33:18","updated_at":"2026-10-15 10:33:18"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.62,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_sicilian_approach_west.json"}},{"waterway":{"waterway_id":"gulf_of_guinea","name":"Gulf of Guinea (Piracy Risk)","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":15272},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3860,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"gulf_of_guinea","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:38:08","updated_at":"2026-10-15 14:38:08"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.54,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_gulf_of_guinea.json"}},{"waterway":{"waterway_id":"tsugaru_strait","name":"Tsugaru Strait","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-01","last_day":"2026-10-15","event_count":14247},"daily":{"first_day":"2026-04-01","last_day":"2026-10-15","row_count":4530,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"tsugaru_strait","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:15:50","updated_at":"2026-10-15 11:15:50"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":4.91,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":197,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_tsugaru_strait.json"}},{"waterway":{"waterway_id":"sunda_strait","name":"Sunda Strait","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-01","last_day":"2026-10-15","event_count":12822},"daily":{"first_day":"2026-04-01","last_day":"2026-10-15","row_count":4208,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"sunda_strait","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:00:41","updated_at":"2026-10-15 11:00:41"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":5.17,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":197,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_sunda_strait.json"}},{"waterway":{"waterway_id":"cape_bojador_gate","name":"Cape Bojador Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step61"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":12095},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3837,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"cape_bojador_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step61","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:37:40","updated_at":"2026-10-15 13:37:40"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.55,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_cape_bojador_gate.json"}},{"waterway":{"waterway_id":"aegean_central_gate","name":"Aegean Central Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step79"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":11056},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3536,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"aegean_central_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step79","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:32:57","updated_at":"2026-10-15 12:32:57"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.63,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_aegean_central_gate.json"}},{"waterway":{"waterway_id":"azores_gate","name":"Azores Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step59"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":10633},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3842,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"azores_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step59","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 12:58:38","updated_at":"2026-10-15 12:58:38"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.2,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_azores_gate.json"}},{"waterway":{"waterway_id":"ligurian_west_gate","name":"Ligurian West Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step83"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":10576},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":2797,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"ligurian_west_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step83","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:30:43","updated_at":"2026-10-15 15:30:43"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.67,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_ligurian_west_gate.json"}},{"waterway":{"waterway_id":"messina_strait","name":"Strait of Messina","kind":"strait","config_version":"messina_strait_v1_20260405"},"history":{"first_day":"2026-03-30","last_day":"2026-10-15","event_count":9429},"daily":{"first_day":"2026-03-30","last_day":"2026-10-15","row_count":3305,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"messina_strait","detector_version":"v1_gateway_compact_sparse_utc","config_version":"messina_strait_v1_20260405","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:45:36","updated_at":"2026-10-15 15:45:36"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.42,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":199,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_messina_strait.json"}},{"waterway":{"waterway_id":"north_atlantic_east_gate","name":"North Atlantic East Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step65"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":9165},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3858,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"north_atlantic_east_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step65","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 16:01:31","updated_at":"2026-10-15 16:01:31"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.15,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_north_atlantic_east_gate.json"}},{"waterway":{"waterway_id":"faroe_approach_gate","name":"Faroe Approach Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step71"},"history":{"first_day":"2026-04-02","last_day":"2026-10-14","event_count":7840},"daily":{"first_day":"2026-04-02","last_day":"2026-10-14","row_count":3382,"lag_days":1,"freshness":"current"},"runtime_state":{"waterway_id":"faroe_approach_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step71","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 14:26:36","updated_at":"2026-10-15 14:26:36"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.74,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":195,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_faroe_approach_gate.json"}},{"waterway":{"waterway_id":"mozambique_channel","name":"Mozambique Channel","kind":"strait","config_version":"wave_b_seed_v1_manual_step51"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":7053},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3312,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"mozambique_channel","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step51","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:54:06","updated_at":"2026-10-15 15:54:06"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.28,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_mozambique_channel.json"}},{"waterway":{"waterway_id":"cape_verde_gate","name":"Cape Verde Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step57"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":5444},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":3034,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"cape_verde_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step57","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:45:33","updated_at":"2026-10-15 13:45:33"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.42,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_cape_verde_gate.json"}},{"waterway":{"waterway_id":"lombok_strait","name":"Lombok Strait","kind":"strait","config_version":"lombok_strait_v1_20260405"},"history":{"first_day":"2026-03-07","last_day":"2026-10-15","event_count":4434},"daily":{"first_day":"2026-03-30","last_day":"2026-10-15","row_count":2554,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"lombok_strait","detector_version":"v1_gateway_compact_sparse_utc","config_version":"lombok_strait_v1_20260405","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:33:13","updated_at":"2026-10-15 15:33:13"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.63,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":222,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_lombok_strait.json"}},{"waterway":{"waterway_id":"central_atlantic_gate","name":"Central Atlantic Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step63"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":4259},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":2688,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"central_atlantic_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step63","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:49:44","updated_at":"2026-10-15 13:49:44"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.35,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_central_atlantic_gate.json"}},{"waterway":{"waterway_id":"northwestern_black_sea","name":"Northwestern Black Sea (Ukraine/Crimea/Russia)","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-02","last_day":"2026-10-15","event_count":1614},"daily":{"first_day":"2026-04-02","last_day":"2026-10-15","row_count":1513,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"northwestern_black_sea","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:57:23","updated_at":"2026-10-15 15:57:23"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.22,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":196,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_northwestern_black_sea.json"}},{"waterway":{"waterway_id":"bab_el_mandeb","name":"Bab el-Mandeb Strait","kind":"strait","config_version":"bab_el_mandeb_v1_20260405"},"history":{"first_day":"2026-03-07","last_day":"2026-10-15","event_count":1182},"daily":{"first_day":"2026-03-07","last_day":"2026-10-15","row_count":2145,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"bab_el_mandeb","detector_version":"v1_gateway_compact_sparse_utc","config_version":"bab_el_mandeb_v1_20260405","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:02:16","updated_at":"2026-10-15 13:02:16"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":3.14,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":222,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_bab_el_mandeb.json"}},{"waterway":{"waterway_id":"torres_strait","name":"Torres Strait","kind":"strait","config_version":"torres_strait_v1_20260405"},"history":{"first_day":"2026-03-30","last_day":"2026-10-15","event_count":955},"daily":{"first_day":"2026-03-30","last_day":"2026-10-15","row_count":1621,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"torres_strait","detector_version":"v1_gateway_compact_sparse_utc","config_version":"torres_strait_v1_20260405","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 11:11:25","updated_at":"2026-10-15 11:11:25"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":4.99,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":199,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_torres_strait.json"}},{"waterway":{"waterway_id":"kara_gates","name":"Kara Gates","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-05-02","last_day":"2026-10-15","event_count":727},"daily":{"first_day":"2026-05-02","last_day":"2026-10-15","row_count":1269,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"kara_gates","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:04:14","updated_at":"2026-10-15 15:04:14"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1.11,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":166,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_kara_gates.json"}},{"waterway":{"waterway_id":"levant_east_gate","name":"Levant East Gate","kind":"strait","config_version":"wave_b_seed_v1_manual_step63"},"history":{"first_day":"2026-04-02","last_day":"2026-10-10","event_count":486},"daily":{"first_day":"2026-04-02","last_day":"2026-10-10","row_count":693,"lag_days":5,"freshness":"stale"},"runtime_state":{"waterway_id":"levant_east_gate","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_manual_step63","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:17:06","updated_at":"2026-10-15 15:17:06"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.89,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"stale"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":191,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_levant_east_gate.json"}},{"waterway":{"waterway_id":"bering_strait","name":"Bering Strait","kind":"strait","config_version":"wave_b_seed_v1_20260407"},"history":{"first_day":"2026-06-08","last_day":"2026-10-15","event_count":201},"daily":{"first_day":"2026-06-08","last_day":"2026-10-15","row_count":506,"lag_days":0,"freshness":"current"},"runtime_state":{"waterway_id":"bering_strait","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_20260407","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 13:24:05","updated_at":"2026-10-15 13:24:05"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":2.78,"runtime_band":"fresh","aggregate_band":"aging","chart_band":"current"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":129,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_bering_strait.json"}},{"waterway":{"waterway_id":"kerch_strait","name":"Kerch Strait","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-04-02","last_day":"2026-09-05","event_count":36},"daily":{"first_day":"2026-04-02","last_day":"2026-09-05","row_count":111,"lag_days":40,"freshness":"stale"},"runtime_state":{"waterway_id":"kerch_strait","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:10:34","updated_at":"2026-10-15 15:10:34"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":1,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"stale"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":156,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_kerch_strait.json"}},{"waterway":{"waterway_id":"matotchkin_shar","name":"Matotchkin Shar","kind":"strait","config_version":"wave_b_seed_v1_bbox"},"history":{"first_day":"2026-08-23","last_day":"2026-10-07","event_count":21},"daily":{"first_day":"2026-08-23","last_day":"2026-10-07","row_count":58,"lag_days":8,"freshness":"stale"},"runtime_state":{"waterway_id":"matotchkin_shar","detector_version":"v1_gateway_compact_sparse_utc","config_version":"wave_b_seed_v1_bbox","last_processed_ts":"2026-10-15 23:59:59","last_aggregate_ts":"2026-10-15 15:43:17","updated_at":"2026-10-15 15:43:17"},"freshness":{"processed_age_hours":0,"aggregate_age_hours":0.46,"runtime_band":"fresh","aggregate_band":"fresh","chart_band":"stale"},"backfill":{"status":"live_only","floor_day":"","cursor_to_day":"","window_days":7,"chunk_days":2,"last_run_at":"","last_from_day":"","last_to_day":"","last_detected":0,"last_inserted":0,"last_updated":0,"last_attempted":0,"last_rows_written":0,"coverage_advanced":false,"dry_run":false,"remaining_days":null,"remaining_windows":null,"target_span_days":null,"covered_target_days":45,"progress_ratio":null,"pace":{"observed_windows":0,"windows_per_hour":null,"avg_minutes_per_window":null,"observed_from_ts":null,"observed_to_ts":null,"eta_hours":null,"eta_at":null},"recent":[],"state_file":"data/processed/transits/history_backfill_matotchkin_shar.json"}}]},"errors":[]}