Operator Dashboard crashes: duplicate chart series
Found while testing app.jaah.ai in Task 6156 (signed in as an operator, Orgs = All orgs or Gmind, Dashboard → Usage tab, range 30d).
The whole Dashboard page renders "Something went wrong loading this page". The browser console shows `MUI X error #34` with argument `other` (a chart series/item id that is not unique), thrown from the OperatorDashboard bundle during chart init and caught by the ErrorBoundary. A second console error: `<rect> attribute width: A negative value is not valid ("-60")`.
Suggestions:
1. Make chart series ids unique when the API's top-N "other" rollup bucket collides with a real group value literally named `other`, or with a second rollup. See `apps/web/src/pages/dashboard/model.ts` `groupLabel` and `palette.ts`. The Dashboard must render on prod data.
2. Contain chart failures so that one bad panel shows a per-panel error instead of blanking the whole Dashboard.
3. Fix the negative `<rect>` width (clamp to ≥ 0) on whichever chart produces it.
Out of scope: redesigning the dashboard or changing its metrics.
Done means:
- With prod-shaped data that includes a group named `other` plus a rollup bucket, every Dashboard tab renders with no console errors. A regression test covers the collision.
- One panel that throws leaves the other panels rendering.
Outcome
Fixed the Dashboard crash: chart series ids/labels are now unique when a group is named `other`, each chart card and tab fails alone, and no more negative rect width. Full gate green; PR #5349 merged; Jaah Deploy succeeded. 4 UX follow-ups are in the report (filing them was refused with a 403).
Artifacts
Activity
- Created
- Ready
- Runner started
- Runner ended (done)