central/docs/PHASE-1B-NOTES.md
Matt Johnson 47359a8144 docs: add FIRMS GUI planning notes
- MAP_KEY management (alias display, rotation)
- Satellite selection (toggle SNPP/NOAA20/NOAA21)
- SNPP end-of-life notice (~Oct 2026)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-05-16 19:58:46 +00:00

3.2 KiB
Raw Blame History

Phase 1B Planning Notes

Design notes for Phase 1B GUI features. These are planning items, not implementation specifications.

Stream Retention GUI

Per-Stream Configuration

  • Show each stream from config.streams table
  • Editable max_age_s with preset chips: 1d, 7d, 14d, 30d, 365d
  • Custom numeric input allowed (operator can enter 90d, etc.)
  • Changes trigger NATS stream update via supervisor hot-reload

Storage Monitor

Per stream, display:

  • Current bytes: Live from nats stream info
  • Projected bytes: Calculated from current rate × max_age
  • Days remaining: Current_bytes / rate_per_day estimate
  • Refresh: Real-time polling, not cached

Global Server Cap

  • Show max_file_store value as read-only reference
  • Editing requires NATS server restart (out of scope for GUI)
  • Display per-stream ceiling (30% of server cap) as context

Region Picker

Interactive Map

  • Bbox selection via click-drag rectangle
  • Same UI component for all adapters (NWS, FIRMS, USGS)
  • Stores {north, south, east, west} floats
  • Preview of coverage area with state/country boundaries

Preset Regions

  • Common presets: CONUS, Pacific Northwest, Mountain West
  • Quick-select buttons alongside custom draw

API Key Management

Key Storage

  • View configured API keys (alias only, not values)
  • Add new keys with alias and value
  • Values encrypted at rest in config.api_keys
  • Rotation: update value, track rotated_at

Required Keys by Adapter

  • FIRMS (Phase 1a-6): MAP_KEY for NASA FIRMS API
  • Future adapters may require additional keys

Technical Notes

  • All GUI changes write to config.* tables
  • Supervisor receives NOTIFY and hot-reloads
  • No service restarts required for config changes
  • Stream retention changes apply within 5 seconds

FIRMS Adapter Configuration

MAP_KEY Management

  • Display key alias () and timestamp
  • Allow operator to rotate key value (re-encrypt new key)
  • Show warning if key not present (polling disabled)
  • No key value display (security)

Satellite Selection

  • Toggle individual satellites: VIIRS_SNPP, VIIRS_NOAA20, VIIRS_NOAA21
  • Stored in array
  • Changes hot-reload to adapter without restart

SNPP End-of-Life Notice

  • NASA timeline: SNPP mission ends ~October 2026
  • GUI should display warning banner when SNPP is enabled and date approaches
  • Recommend adding NOAA-21 to satellites list before SNPP EOL
  • After EOL, adapter will fail to fetch SNPP data (404); GUI should surface this

FIRMS Adapter Configuration

MAP_KEY Management

  • Display key alias (firms) and last_used_at timestamp
  • Allow operator to rotate key value (re-encrypt new key)
  • Show warning if key not present (polling disabled)
  • No key value display (security)

Satellite Selection

  • Toggle individual satellites: VIIRS_SNPP, VIIRS_NOAA20, VIIRS_NOAA21
  • Stored in config.adapters.settings.satellites array
  • Changes hot-reload to adapter without restart

SNPP End-of-Life Notice

  • NASA timeline: SNPP mission ends ~October 2026
  • GUI should display warning banner when SNPP is enabled and date approaches
  • Recommend adding NOAA-21 to satellites list before SNPP EOL
  • After EOL, adapter will fail to fetch SNPP data (404); GUI should surface this