Skip to content

I3792 — Every chart on every surface is drawn from a table on its page

Bring the kit chart (site/templates/kit/dashboard.html) and the /ui server-SVG donut and meter (ui/view.rs) to the contract site/charts.js already follows: the numbers are a table on the page and the chart is drawn from it, so a chart never states a number its reader cannot read.

BLOCKED wave 2 · p2 · implementation profile · parallel safe

Part of one-kit-on-every-surface — Code, charts, controls, embeds and shell blocks are one kit on every surface, declared in the design book and held there by a gate.

Blocked. This issue cannot start until I2654 is done. The status is derived from that, not declared.

Objective

Bring the kit chart (site/templates/kit/dashboard.html) and the /ui server-SVG donut and meter (ui/view.rs) to the contract site/charts.js already follows: the numbers are a table on the page and the chart is drawn from it, so a chart never states a number its reader cannot read.

Why

On 2026-10-20 four mechanisms drew charts; site/charts.js draws from the page's table (ADR 0152), while the kit chart has no table and the /ui donut a legend only. I2654 holds the site's charts to their tables; nothing holds the others.

Current state

charts.js: table first. Kit chart: no table. /ui donut and meter: legend counts, no table. Cytoscape graphs: a table beside each.

Desired state

Every chart on the site, /ui and the Cockpit has its table on the page and is drawn from it; the design book's chart section states the contract; I2654's gate covers every surface.

Scope

  • site/templates/kit/dashboard.html
  • apps/majordomus-cli/src/ui/view.rs
  • site/charts.js
  • scripts/lib/ui-audit.mjs

Dependencies

Acceptance criteria

  • The kit chart and the /ui donut and meter each render a table with the numbers they draw
  • A chart planted without its table fails the gate I2654 adds, on the site, /ui and the Cockpit

Validation

  • bin/majordomus plan validate
  • cargo test --lib ui::view

Evidence required

  • every_chart_has_its_table_case

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I3792.yaml. Read it back with majordomus plan show I3792.

Searches the titles and descriptions of every page this site publishes.