get_alerts severity and cancellation corrections
level and phenomenon now derive from the message body's NOAA scale instead of the code suffix; cancellation notices are detected per record and excluded from active_only.
Added:
- noaaScale field — the NOAA scale a product's body states (e.g. "G1", "R2"); null when the body states none
- cancelled field — flags a CANCEL WARNING:/CANCEL ALERT: record; active_only=true now excludes them
Fixed:
- level/phenomenon now derive from the body's NOAA scale/Category line instead of the code suffix, correcting severity and phenomenon for most live product codes (#18)
- active_only=true no longer returns cancellation notices as active — detection is per record via cancelled (#19)
74 tests pass; bun run devcheck clean.