feat(webui): the Dashboard and each organization's page lead with a row of figure tiles, each a link to what it counts (#1873) #1972

Merged
jason.woltje merged 2 commits from sp8-kpis into refactor 2026-11-15 14:25:13 +00:00
Owner

What changes

  • The system Dashboard leads with one row of six tiles: Agents working, Organizations, Needs you, Open tasks, Done this week, Projects. Each tile links to the page that lists what it counts.
  • An organization's page leads with four tiles (Agents working, Open tasks, Needs you, Done this week), each linking to the system page filtered to that organization.
  • A figure adds up only the organizations whose reads gave it. An organization left out is named on the tile with its reason. A tile with nothing read says "Not read" and shows no number.
  • The old Dashboard tiles (Sessions, Model spend and the like) and the organization page's KPI and Metrics placeholders are replaced by these rows.
  • The Dashboard's "Open tasks" link goes to #/tasks, not one organization's board.

How

  • workspace.js: kpiTile, plus readInstances and agentRows shared by the Agents page and the tiles, so a tile counts what that page lists.
  • All reads already existed. No new server route, no write route.
  • shell.css: tile rules, 3 columns at 1100 px and below, 2 at 759 px and below.

Tests

  • New tests/kpi-tiles-browser.test.mjs, 9 tests, 8 red on the base (the ninth is a guard).
  • Lane gate on c66f1ec00: 189 webui test files, 1490 pass, 2 fail, 4 skipped. The two failures are timing tests in org-live-edit-browser and single-pane-browser, hit while another lane's gate ran on the same host. Each file passed alone twice.
  • Lead check on c66f1ec00: 119 pass, 0 fail over the changed test files plus the system page files including single-pane-browser, and org-live-edit-browser alone 4 pass, 0 fail.

Review

One fresh claude-opus-5-5 reviewer: approve, eight P3 findings. Three fixed in c66f1ec00, the rest listed in the lane report.

Left for later

  • No sparkline or trend: no read returns a series.
  • The Agents tile total can differ from the Agents page when an instances read fails; the tile names the organization.
  • With no organizations, #/dashboard shows "Not found". That predates this change.
## What changes - The system Dashboard leads with one row of six tiles: Agents working, Organizations, Needs you, Open tasks, Done this week, Projects. Each tile links to the page that lists what it counts. - An organization's page leads with four tiles (Agents working, Open tasks, Needs you, Done this week), each linking to the system page filtered to that organization. - A figure adds up only the organizations whose reads gave it. An organization left out is named on the tile with its reason. A tile with nothing read says "Not read" and shows no number. - The old Dashboard tiles (Sessions, Model spend and the like) and the organization page's KPI and Metrics placeholders are replaced by these rows. - The Dashboard's "Open tasks" link goes to `#/tasks`, not one organization's board. ## How - `workspace.js`: `kpiTile`, plus `readInstances` and `agentRows` shared by the Agents page and the tiles, so a tile counts what that page lists. - All reads already existed. No new server route, no write route. - `shell.css`: tile rules, 3 columns at 1100 px and below, 2 at 759 px and below. ## Tests - New `tests/kpi-tiles-browser.test.mjs`, 9 tests, 8 red on the base (the ninth is a guard). - Lane gate on c66f1ec00: 189 webui test files, 1490 pass, 2 fail, 4 skipped. The two failures are timing tests in `org-live-edit-browser` and `single-pane-browser`, hit while another lane's gate ran on the same host. Each file passed alone twice. - Lead check on c66f1ec00: 119 pass, 0 fail over the changed test files plus the system page files including `single-pane-browser`, and `org-live-edit-browser` alone 4 pass, 0 fail. ## Review One fresh claude-opus-5-5 reviewer: approve, eight P3 findings. Three fixed in c66f1ec00, the rest listed in the lane report. ## Left for later - No sparkline or trend: no read returns a series. - The Agents tile total can differ from the Agents page when an instances read fails; the tile names the organization. - With no organizations, `#/dashboard` shows "Not found". That predates this change.
jason.woltje added 2 commits 2026-11-15 14:25:10 +00:00
The Dashboard's tiles are Agents working of all agents, Organizations running, Needs you, Open tasks,
Done this week and Projects, each added up only from the organizations whose reads gave it; a tile
names every organization it leaves out and why. The Sessions and Model spend tiles go: the first is
the Agents tile now, the second had no figure. An organization's page replaces its KPIs and Metrics
placeholders with Agents working, Open tasks, Needs you and Done this week for that organization,
each a link to the system page filtered to it, from one cross-organization read scoped to it. The
system Agents page's row building is shared so a tile's figure is that page's row count.
jason.woltje merged commit c66f1ec00c into refactor 2026-11-15 14:25:13 +00:00
Sign in to join this conversation.