prop/test/microwaveprop/workers
Graham McIntire 413cc92cab
feat(infra): auto-extend quarterly partitions for hrrr/hrdps tables
Partition list for hrrr_profiles + hrdps_profiles was hand-edited in
priv/repo/structure.sql; if no human extended it, writes for the next
quarter would silently fail at the worker level (Rust hrrr-point-worker
marks tasks failed; the calibration pipeline silently joins NULLs).

Adds:

* Microwaveprop.PartitionManager — runtime DDL helper. Quarter math via
  a single integer index (year*4 + quarter) for rollover safety.
  Coverage check via pg_inherits before CREATE so a quarterly target
  inside an existing wider partition (some 2027 ones are half-year)
  is treated as :exists rather than colliding.
* Microwaveprop.Workers.PartitionMaintenanceWorker — daily cron at
  03:15 UTC, 4-quarter lookahead. Idempotent; cheap when nothing's
  missing. lookback_quarters arg lets ops widen for catch-up.

Tests cover the create + idempotent re-run + name format + year
rollover paths via a synthetic parent created inside the sandbox
transaction (no DDL leaks into the shared test DB).
2026-05-05 16:22:16 -05:00
..
admin_task_worker_test.exs fix(workers): 3 bug/perf fixes from codebase review 2026-04-21 09:53:13 -05:00
backfill_enqueue_worker_test.exs fix(hrrr): mark contacts :unavailable on failed fetch tasks 2026-04-22 17:46:51 -05:00
canadian_sounding_fetch_worker_test.exs Ingest Canadian radiosondes via UWYO + plans for RDPS/HRDPS 2026-04-13 09:14:34 -05:00
common_volume_radar_worker_test.exs fix(workers): propagate transient errors so Oban retries + counters fire 2026-04-21 13:15:27 -05:00
contact_import_worker_test.exs fix(import): handle Radio.create_contact :duplicate return in worker 2026-04-17 09:54:17 -05:00
contact_position_backfill_worker_test.exs test: override stale distance_km when filling a missing pos 2026-04-16 14:09:45 -05:00
contact_weather_enqueue_worker_test.exs fix(weather): reconcile hrrr_status + iemre_status stuck in :queued 2026-04-24 13:38:52 -05:00
gefs_fetch_worker_test.exs test: coverage round 4 (84.39% → 84.44%) + 6 new property tests 2026-04-24 10:32:05 -05:00
grid_cache_prune_worker_test.exs feat(workers): add GridCachePruneWorker 2026-04-21 13:19:52 -05:00
hrdps_grid_worker_test.exs feat(hrdps): scope to current-hour-only at 0.5° step 2026-04-30 10:36:00 -05:00
hrrr_native_grid_worker_test.exs test: coverage round 2 (82.05% → 83.96%) + 23 new property tests 2026-04-24 10:15:37 -05:00
iemre_fetch_worker_test.exs test: add property coverage for grid snaps, backoff, notes 2026-04-23 13:05:06 -05:00
ionosphere_fetch_worker_test.exs test: coverage round 2 (82.05% → 83.96%) + 23 new property tests 2026-04-24 10:15:37 -05:00
mechanism_classify_worker_test.exs fix(workers): propagate transient errors so Oban retries + counters fire 2026-04-21 13:15:27 -05:00
narr_fetch_worker_test.exs Rename ERA5 → NARR across the codebase 2026-04-16 09:22:23 -05:00
nexrad_worker_test.exs refactor: normalize pos1/pos2 JSONB key to 'lon' everywhere 2026-04-17 09:10:32 -05:00
partition_maintenance_worker_test.exs feat(infra): auto-extend quarterly partitions for hrrr/hrdps tables 2026-05-05 16:22:16 -05:00
propagation_grid_worker_test.exs feat(prop): adaptive HRRR cycle selection — prefer fresh, fall back if late 2026-04-24 19:44:07 -05:00
propagation_prune_worker_test.exs test: fix three pre-existing test flakes 2026-04-21 13:07:01 -05:00
pskr_calibration_worker_test.exs feat(pskr): rolling-window calibration sampling, every 5 min 2026-05-04 16:46:59 -05:00
pskr_recalibration_worker_test.exs feat(pskr): weekly recalibration analysis on the calibration corpus 2026-05-04 16:18:17 -05:00
radar_frame_worker_test.exs test: expand coverage and refactor to idiomatic style 2026-04-23 13:28:42 -05:00
rover_mission_backfill_worker_test.exs feat(rover-planning): hourly backfill worker recovers stuck paths 2026-05-03 13:52:27 -05:00
solar_index_worker_test.exs Add type filter to backfill enqueue 2026-04-06 11:42:26 -05:00
space_weather_fetch_worker_test.exs SpaceWeather: SWPC JSON ingestion (Kp, F10.7, GOES X-ray) 2026-04-15 14:55:24 -05:00
station_elevation_worker_test.exs feat(rover): Oban worker enriches station elevation post-insert 2026-04-25 16:26:33 -05:00
terrain_profile_worker_test.exs Rename qsos table to contacts, qso_id to contact_id 2026-04-02 15:52:19 -05:00
user_home_qth_lookup_worker_test.exs feat(accounts): auto-prefill home QTH from QRZ on register + backfill on boot 2026-04-25 17:03:01 -05:00
weather_fetch_worker_test.exs perf(weather): asos_day — one job per unique (station, UTC date) 2026-04-24 13:19:20 -05:00