prop/lib/microwaveprop/weather
Graham McIntire 289cfe5eef
Some checks failed
Build and Push / Build CI test image (push) Successful in 10s
Build base image / Build and push base image (push) Successful in 21s
Build and Push / Build and Push Docker Image (push) Has been cancelled
fix(weather): prune dense .sgrid scalar files
ScalarFile.list_valid_time_dirs/1 stripped only a `.hrdps` suffix
before DateTime.from_iso8601/1, so `<iso>.sgrid` and
`<iso>.hrdps.sgrid` never parsed and were skipped by both
prune_older_than/1 and retain_window/2. Since .sgrid is the format the
pipeline actually writes, nothing on the dense tier was ever deleted —
production held 222 files spanning 8 days against a 48h window.

Strip the known suffixes in order, mirroring ProfilesFile's anchored
parser (which documents this exact failure mode for .hrdps.prop).
Orphaned .tmp.* writes still don't parse, so they stay with the tmp
sweep in Propagation.prune_old_scores/0.

Also corrects the CLAUDE.md entry that recorded this as already fixed —
the call site was present, the suffix parsing was not.
2026-08-05 17:52:06 -05:00
..
grib2 fix: resolve all 281 credo issues across source and test files 2026-07-29 09:04:21 -05:00
frontal_analysis.ex fix(prod-build): silence Nx.* undefined warnings in dev/test-only modules 2026-04-30 12:19:16 -05:00
gefs_client.ex fix: resolve 158/183 credo --strict warnings 2026-06-12 15:47:15 -05:00
gefs_profile.ex feat(gefs): scaffold extended-horizon forecast ingestion 2026-04-18 14:28:44 -05:00
grid.ex fix: resolve all 281 credo issues across source and test files 2026-07-29 09:04:21 -05:00
grid_cache.ex fix: resolve all dialyzer type errors across project (46→0 project errors) 2026-06-08 17:51:13 -05:00
hrdps_client.ex fix: prevent contacts_dedup_idx collisions in parallel async tests 2026-08-04 17:05:16 -05:00
hrdps_profile.ex feat(hrdps): hrdps_profiles partitioned table + HrdpsProfile schema 2026-04-29 17:12:41 -05:00
hrrr.ex fix: prevent contacts_dedup_idx collisions in parallel async tests 2026-08-04 17:05:16 -05:00
hrrr_client.ex fix: prevent contacts_dedup_idx collisions in parallel async tests 2026-08-04 17:05:16 -05:00
hrrr_climatology.ex fix(logging): suppress /metrics logs and harden scorer hot path 2026-04-21 10:44:25 -05:00
hrrr_native_client.ex fix: resolve 158/183 credo --strict warnings 2026-06-12 15:47:15 -05:00
hrrr_native_profile.ex Extend skew-T plot to cover the full troposphere 2026-04-14 17:25:58 -05:00
hrrr_point_enqueuer.ex fix: resolve 27 security, architecture, test, and performance audit findings 2026-07-27 18:19:37 -05:00
hrrr_profile.ex Add dialyzer specs and types across the codebase 2026-04-12 08:55:04 -05:00
hrrr_profile_lookup.ex fix(skewt): only fall back to profiles with all 13 pressure levels 2026-04-25 14:19:56 -05:00
iem_client.ex fix: resolve all 281 credo issues across source and test files 2026-07-29 09:04:21 -05:00
iem_rate_limiter.ex perf(weather): adaptive IemRateLimiter + rebatch mix task 2026-04-24 12:57:25 -05:00
iemre.ex fix: resolve 27 security, architecture, test, and performance audit findings 2026-07-27 18:19:37 -05:00
iemre_observation.ex Add dialyzer specs and types across the codebase 2026-04-12 08:55:04 -05:00
map_layers.ex feat(weather): add duct cutoff band map layer 2026-05-15 19:51:24 -05:00
narr.ex fix: resolve 27 security, architecture, test, and performance audit findings 2026-07-27 18:19:37 -05:00
narr_client.ex fix: resolve all 281 credo issues across source and test files 2026-07-29 09:04:21 -05:00
narr_profile.ex Rename ERA5 → NARR across the codebase 2026-04-16 09:22:23 -05:00
ncei_metar_client.ex fix: resolve all compiler warnings except framework-generated phoenix_component_verify 2026-05-29 10:18:52 -05:00
nexrad_cache.ex fix: resolve all dialyzer type errors across project (46→0 project errors) 2026-06-08 17:51:13 -05:00
nexrad_client.ex fix: prevent contacts_dedup_idx collisions in parallel async tests 2026-08-04 17:05:16 -05:00
nexrad_observation.ex Add dialyzer specs and types across the codebase 2026-04-12 08:55:04 -05:00
profile_lookup.ex fix: prevent contacts_dedup_idx collisions in parallel async tests 2026-08-04 17:05:16 -05:00
rebatch_asos.ex perf(weather): asos_day — one job per unique (station, UTC date) 2026-04-24 13:19:20 -05:00
scalar_file.ex fix(weather): prune dense .sgrid scalar files 2026-08-05 17:52:06 -05:00
sgrid.ex prop-pipeline: .sgrid dense scalars, HRDPS rotated-pole decode-once, memory trim 2026-08-01 09:11:59 -05:00
skewt_params.ex feat(skewt): add wet-bulb / virtual-T traces and right-edge level rail 2026-04-25 14:24:28 -05:00
solar_client.ex fix: resolve all 281 credo issues across source and test files 2026-07-29 09:04:21 -05:00
solar_index.ex Add dialyzer specs and types across the codebase 2026-04-12 08:55:04 -05:00
sounding.ex Add dialyzer specs and types across the codebase 2026-04-12 08:55:04 -05:00
sounding_params.ex fix: resolve all 281 credo issues across source and test files 2026-07-29 09:04:21 -05:00
soundings.ex fix: prevent contacts_dedup_idx collisions in parallel async tests 2026-08-04 17:05:16 -05:00
station.ex Add dialyzer specs and types across the codebase 2026-04-12 08:55:04 -05:00
surface.ex fix: resolve all 281 credo issues across source and test files 2026-07-29 09:04:21 -05:00
surface_observation.ex Add dialyzer specs and types across the codebase 2026-04-12 08:55:04 -05:00
theta_e.ex Guard against zero specific humidity in theta-e computation 2026-04-11 12:52:32 -05:00
uwyo_sounding_client.ex feat(telemetry): wide instrumentation + bump hrrr to 2 per pod 2026-04-18 16:33:34 -05:00
weather_layers.ex fix(weather): read atom-keyed ducts in duct base/strength layers 2026-08-05 17:33:54 -05:00