Members asked for charts to share with the co-op. This is the member-facing
half of it, in the view where co-op-wide data already lives.
- /api/metrics proxies the portal's new /broker/metrics (aggregate, non-personal:
co-op size, requests served, spend). No per-member figure is fetched.
- Same chart as the admin panel's Trends tab: inline SVG, no library, no CDN,
colours from the shared palette vars. Members / Requests / Spend, and
30 / 90 / all time, re-rendered client-side without refetching.
- Lazy: loads the first time someone opens the co-op view, so the dashboard's
initial load is unchanged.
- Gaps stay gaps. A day never measured breaks the line rather than reading as
zero members, with the sub-line saying how many days are missing.
- Integer y-axis for people and requests; 1/2/5 money ticks, per the panel fix.
Verified with the same node harness used for the panel (shared, so it asserts
the same invariants against the live series).