Root cause of the blank /map analysis breakdown: the skippy.w5isp.com caching proxy was unreachable from the cluster, so every f00 analysis step failed at the idx fetch and Rust never wrote a ProfilesFile. The /map point-detail panel silently degraded to empty factors because no profile ever lands on `/data/scores/profiles/`. HrrrClient now takes an optional fallback base. When the primary base exhausts its retries (5× exponential backoff), fetches retry once against the fallback — defaulted to the NOAA S3 public bucket. Forecast, analysis, and native-duct paths all go through the same fetch_blob_with_fallback helper so a proxy outage degrades to direct S3 instead of stalling. Moved the native-URL builder out of native_duct into fetcher so the single helper can build both primary and fallback URLs for the native hybrid-sigma product. |
||
|---|---|---|
| .. | ||
| src | ||
| tests | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| Dockerfile | ||