prop/rust/prop_grid_rs
Graham McIntire 3d214f60f0
fix(hrdps): parse wgrib2 grid_template=1 rotated-pole output
Every HRDPS chain step failed at decode with "could not parse nx×ny
from wgrib2 -grid output", so no .hrdps.prop or .hrdps.sgrid artifact
was ever produced and the Canadian half of the weather overlay was
empty.

parse_wgrib2_grid only handled the verbose grid_template=10 shape
(Rotated Lat/lon Grid:, LatFirst:, Di:, South Pole Location:). The
wgrib2 3.8.0 binary in the pipeline image actually emits the compact
grid_template=1 shape for MSC HRDPS files:

    rotated lat-lon grid:(2540 x 1290) units 1e-06 ...
    lat -12.302501 to 16.700001 by 0.022500
    lon 345.178780 to 42.306283 by 0.022500 #points=3276600
    south pole lat=-36.088520 lon=245.305142 angle of rot=0.000000

Accept both, keeping the strict-by-default behaviour so a real MSC grid
change still surfaces as an error. Anisotropic grids are rejected
outright because RotatedPoleParams carries a single isotropic step that
geo_to_rotated applies to both axes.

Test uses the verbatim -grid output captured from the production pod.
2026-08-05 17:33:39 -05:00
..
src fix(hrdps): parse wgrib2 grid_template=1 rotated-pole output 2026-08-05 17:33:39 -05:00
tests fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
.gitignore feat(grid-rs): Rust worker for HRRR f01..f18 propagation chain 2026-04-19 15:42:49 -05:00
Cargo.lock chore: update all dependencies, fix Bandit CVE-2026-65623 HIGH 2026-07-27 11:35:06 -05:00
Cargo.toml fix(propagation): 7 pipeline bugs + validation harnesses + model improvements 2026-08-01 19:28:41 -05:00
Dockerfile perf(grid-rs): cargo-chef + unified --release profile in CI build 2026-04-30 09:54:25 -05:00