prop/rust/prop_grid_rs/src/lib.rs
Graham McIntire c56bb91f71
chore(grid-rs): retrigger Rust CI after runner restart
The forgejo-runner was offline when 989d310..410a137 landed, so the
build-grid-rs workflow never dispatched for those pushes. Empty CI
retrigger commits don't match the path filter. Touching the crate
root forces build-grid-rs.yaml to fire and pick up the HRRR S3
fallback + scores_file .prop rename + point lookup fix.

Also corrects the now-stale "f01..f18 forecast hours only" note — as
of Phase 3 Stream A, Rust owns the f00 analysis step too.
2026-04-21 16:13:03 -05:00

39 lines
1.4 KiB
Rust

//! Rust extraction of the Microwaveprop HRRR propagation pipeline.
//!
//! Each module mirrors the Elixir module it ports from so golden-fixture
//! tests can compare behavior 1:1. Module boundaries chosen so failures
//! during TDD fall into the smallest possible blast radius.
//!
//! Post-Phase-3: f00 analysis and f01..f18 forecasts both live here.
//! Port targets:
//! band_config ← lib/microwaveprop/propagation/band_config.ex
//! region ← lib/microwaveprop/propagation/region.ex
//! scorer ← lib/microwaveprop/propagation/scorer.ex
//! grid ← lib/microwaveprop/propagation/grid.ex
//! decoder ← lib/microwaveprop/weather/grib2/wgrib2.ex
//! fetcher ← lib/microwaveprop/weather/hrrr_client.ex
//! scores_file ← lib/microwaveprop/propagation/scores_file.ex
//! db — new; grid_tasks claim/complete + NOTIFY propagation_ready
//!
//! Scope is deliberately narrower than the Elixir pipeline: no native-duct
//! merge, no NEXRAD, no commercial-link boost. Those are f00-only in
//! production and Elixir keeps handling f00.
pub mod band_config;
pub mod commercial;
pub mod db;
pub mod decoder;
pub mod duct;
pub mod fetcher;
pub mod grid;
pub mod hrrr_points;
pub mod metrics;
pub mod native_duct;
pub mod nexrad;
pub mod pipeline;
pub mod profiles_file;
pub mod region;
pub mod scorer;
pub mod scores_file;
pub mod sounding_params;
pub mod telemetry;