prop/lib/microwaveprop_web
Graham McIntire 06feda7110
perf: finish audit follow-ups (path conditions, recalibrator parallelism)
Path calculator conditions map was missing :latitude and
:best_duct_band_ghz. Scorer read them with bracket-notation so the
behaviour was defensively correct but we were leaving signal on the
floor:

- latitude: midpoint of src/dst so `score_season` picks up the right
  latitude-based seasonal shift for northern vs southern paths
- best_duct_band_ghz: queried via new Weather.nearest_native_duct_ghz/3
  at the midpoint so score_refractivity/4 applies the 1.15× boost
  when a native-resolution duct supports the target band

Recalibrator.fit/1 was serialising ~10k per-contact HRRR lookups
(5000 positives + 5000 negatives, one Weather.find_nearest_hrrr each).
Parallelised both sides with Task.async_stream at 20 concurrency —
well under the prod db pool of 30. Cuts a band recalibration from
~minutes of query round-trips to seconds.
2026-04-18 12:23:18 -05:00
..
components feat(design): apply NTMS design system tokens 2026-04-17 17:34:15 -05:00
controllers feat(auth): self-service password reset 2026-04-18 08:42:35 -05:00
live perf: finish audit follow-ups (path conditions, recalibrator parallelism) 2026-04-18 12:23:18 -05:00
plugs fix enrichment 2026-04-02 15:30:41 -05:00
endpoint.ex chore(logs): skip HEAD requests in endpoint telemetry log 2026-04-18 10:22:48 -05:00
gettext.ex initial 2026-03-28 11:28:47 -05:00
live_table_footer.ex Show windowed page list in live_table footer 2026-04-13 10:02:19 -05:00
router.ex feat(auth): self-service password reset 2026-04-18 08:42:35 -05:00
skew_t.ex Rename ERA5 → NARR across the codebase 2026-04-16 09:22:23 -05:00
telemetry.ex initial 2026-03-28 11:28:47 -05:00
user_auth.ex Beacon power in mW, settings tweaks 2026-04-08 12:45:35 -05:00