Shape of the JSON payload served by GET /api/data from the dashboard
HTTP server. Single source of truth (#965) — imported by
dashboard-server.ts, which previously redeclared this interface inline
and so silently drifted whenever this module changed shape.
Labels of sub-fetches that degraded to empty fallbacks during this data
build. Non-empty means one or more background calls failed and the
corresponding sections of the response are approximations (stale or
zero'd) rather than authoritative. The SPA surfaces this as a banner
so users know the dashboard is showing partial data. See #1035.
Shape of the JSON payload served by
GET /api/datafrom the dashboard HTTP server. Single source of truth (#965) — imported by dashboard-server.ts, which previously redeclared this interface inline and so silently drifted whenever this module changed shape.