Files
weatherfeeder/internal/providers/nws/doc.go
Eric Rakestraw f13f43cf56 refactor(providers): centralize provider-specific parsing and invariants
- Introduce internal/providers/nws with shared timestamp parsing used by both
  NWS sources and normalizers
- Migrate NWS observation source + normalizer to use the shared provider helper
  for consistent RFC3339/RFC3339Nano handling
- Introduce internal/providers/openweather with a shared URL invariant helper
  enforcing units=metric
- Remove duplicated OpenWeather URL validation logic from the observation source
- Align provider layering: move provider “contract/quirk” logic out of
  normalizers and into internal/providers
- Update normalizer and standards documentation to clearly distinguish:
  provider helpers (internal/providers) vs canonical mapping logic
  (internal/normalizers)

This refactor reduces duplication between sources and normalizers, clarifies
layering boundaries, and establishes a scalable pattern for future forecast
and alert implementations.
2026-01-15 20:40:53 -06:00

9 lines
369 B
Go

// Package nws contains provider-specific helper code for the National Weather Service
// used by both sources and normalizers.
//
// Rules:
// - No network I/O here (sources fetch; normalizers transform).
// - Keep helpers deterministic and easy to unit test.
// - Prefer putting provider quirks/parsing here when sources + normalizers both need it.
package nws