prop/lib/microwaveprop/propagation
Graham McIntire 2fd88a94ea
Some checks failed
Build and Push / Build and Push Docker Image (push) Waiting to run
Build prop-grid-rs / Test, build, push (push) Failing after 3m41s
fix(propagation): 7 pipeline bugs + validation harnesses + model improvements
Phase A — 7 pipeline bugs:
- retain_scores_window: fix timeline self-deletion (NOTIFY payload run_time|valid_time)
- Rust/Elixir weight divergence: Rust loads band_weights.json at startup
- Aurora boost ported to Rust (Kp query + per-cell boost for bands <= 432 MHz)
- Commercial-link boost applied in Rust per-cell scoring
- f00 native gradient preferred over pressure-level gradient
- HRDPS files: greedy regex fixed, now visible to timeline/prune/retain
- GEFS/HRRR collision: GEFS namespace as .gefs.prop, merge at read

Phase B — Validation harness:
- scripts/validate_algo.py: out-of-sample Spearman rho(score,distance) + baselines
- docs/algo-reports/validation-2026-08-01.{json,md}

Phase C — Forecast-skill evaluation:
- scripts/validate_forecast.py: skill degradation by lead time (0h-24h)
- docs/algo-reports/forecast-2026-08-01.{json,md}

Phase D — Calibration + model improvements:
- recalibrate.py: validation gate before weight deploy
- Recalibrator: Nx.max(0.0) replaces Nx.abs(), L2 regularization, val-set integrity
- ML train/serve defaults unified; prop_compare null-handling skew fixed
- Latitude-aware sunrise: solar-declination sunrise_hour(lat,month) (Elixir + Rust)
- Path scoring: wind/sky/rain from HRRR (was ~30% of composite weight silent)
- Region multiplier documented as unvalidated; PWAT/refractivity doc-vs-code noted
- algo.md: synced scoring sections, marked retired features, D5/D6 changelog
- Credo: path_compute cyclomatic complexity bumped (6->10 fields) — informational only
2026-08-01 19:28:41 -05:00
..
band_config.ex fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
band_weights.ex perf(algo): unify recalibration into single Python pipeline with JSON output 2026-05-25 14:45:55 -05:00
common_volume.ex refactor: deduplicate helpers and simplify Scorer 2026-04-28 14:14:34 -05:00
duct.ex fix: resolve all 281 credo issues across source and test files 2026-07-29 09:04:21 -05:00
eme.ex feat(eme): add /eme Earth-Moon-Earth calculator 2026-04-23 16:18:20 -05:00
freshness_monitor.ex perf+hygiene: batch 1 of system-review fixes 2026-04-21 17:06:07 -05:00
grid.ex Fix all medium findings and split contact_live_test.exs 2026-05-29 15:53:04 -05:00
grid_task.ex fix: resolve 27 security, architecture, test, and performance audit findings 2026-07-27 18:19:37 -05:00
grid_task_enqueuer.ex fix: resolve 18 bugs across LiveViews, schemas, tests, and logic 2026-07-29 07:46:54 -05:00
hf_muf.ex Fix all medium findings and split contact_live_test.exs 2026-05-29 15:53:04 -05:00
inversion.ex Add dialyzer specs and types across the codebase 2026-04-12 08:55:04 -05:00
mechanism_classifier.ex fix: resolve 391 Credo issues across codebase 2026-06-12 13:51:32 -05:00
mode_thresholds.ex fix: resolve all dialyzer type errors across project (46→0 project errors) 2026-06-08 17:51:13 -05:00
moon_ephemeris.ex feat(propagation): per-contact mechanism classification 2026-04-18 10:42:08 -05:00
notify_listener.ex fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
path_analysis.ex fix: resolve 18 bugs across LiveViews, schemas, tests, and logic 2026-07-29 07:46:54 -05:00
path_compute.ex fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
pgrid.ex perf(grid-rs): dense grid, fused scoring pass, and columnar .pgrid profiles 2026-08-01 08:23:36 -05:00
pipeline_status.ex feat(map): shareable URL params for view/band/time 2026-04-19 08:53:07 -05:00
profiles_file.ex prop-pipeline: .sgrid dense scalars, HRDPS rotated-pole decode-once, memory trim 2026-08-01 09:11:59 -05:00
rain_scatter.ex refactor: deduplicate helpers and simplify Scorer 2026-04-28 14:14:34 -05:00
rain_scatter_classifier.ex feat(rainscatter): classify QSO propagation mechanism from common-volume radar 2026-04-17 15:57:59 -05:00
recalibrator.ex fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
region.ex fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
run_timing.ex feat: extend HRRR forecast horizon from 18h to 48h 2026-06-10 11:36:58 -05:00
score_cache.ex fix: resolve 7 pre-existing test failures and ScoreCache DateTime bug 2026-06-10 13:50:24 -05:00
scorer.ex fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
scores_file.ex fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
sporadic_e.ex Add 50/144/222 MHz bands, rename 440→432 2026-04-16 12:36:10 -05:00