fix(firms): drop LIVE from the row's source and the voice answer for a snapshot that ends at a set time

The catalog source 'NASA FIRMS · LIVE' still led the row; getStats() now
names the source 'NASA FIRMS' for such a snapshot. get_active_fires says
"in the 24 hours to" its end and reports window_end. The end is checked
to be a printable time, cleared under KEY REQUIRED, the test moves next
to the layer, and the changelog and CURRENT-STATE describe it.
This commit is contained in:
Sameh Khamis committed 2026-11-10 08:19:40 -08:00
1 parent 43706b8dd0
commit 4ef0869a87
10 files changed
+163 -61

No files matched your search

+5 -4
View File
@@ -145,15 +145,16 @@ export async function fetchFirms(
*
* Routes:
* GET /api/firms → {fetchedAt, stale, ttlMs, sources, count, fires}
*
* The trailing 24 hours to now. A source may instead answer the 24 hours to
* a set time, naming its end as `at` (epoch ms); the layer's row then shows
* that time rather than LIVE. This proxy never sets `at`.
* GET /api/firms/status → {hasKey, lastFetch, count, stale, ttlMs, transactions}
*
* Keyless (no FIRMS_MAP_KEY): /api/firms → 503 {error:'no_key'}; status →
* {hasKey:false}. Upstream is never touched without a key.
*
* /api/firms answers the trailing 24 hours to now. A source may instead
* answer the 24 hours to a set time, naming its end as `at` (epoch ms); the
* layer's row then shows that time rather than LIVE. This proxy never sets
* `at`.
*
* @returns {import('vite').Plugin}
*/
export function firmsProxy() {