The roles mock still DRAWS the two-fill checkbox its own notes deleted — panel 3 contradicts § A role is its name and its set
A defect in MOTIR-2463's merged output, found while starting the editor card — which is the card that reads the panel in question.
When the based_on decision landed (Yue, 2026-08-09) the amendment swept the notes, the field hint, panel 2's chip and the Members picker — but not panel 3's permission rows. So design/projects/roles-permissions.mock.html now contradicts itself:
- § Colour + shape rules and § A role is its name and its set say a permission is held or not held — ONE checked state;
- panel 3 still renders two
<span class="cbox frombase">greyed ticks, two<span class="from">from Viewer</span>labels, and twoaria-label="Held — from Viewer"values.
Why it matters rather than being cosmetic. The mock is the layout source of truth and the notes are the spec; when they disagree, the next agent has to pick one, and the design-reference rule exists precisely so they never have to. MOTIR-2483 builds this exact panel against the shipped Checkbox, which has no provenance prop — so the mock is asking for a control that no longer exists.
Scope boundary
In: the two .frombase fills → plain checked .cbox; the two .from spans removed; the two aria-labels → Held; the now-unused .permrow .from rule and the .cbox.frombase rule deleted (a dead rule in a mock is a suggestion to the next reader); the PNG re-exported; a one-line revision note. Out: anything else in the asset — the notes are already correct, panel 2 is already correct, and the Start from field and its hint stay exactly as they are (the pick still seeds the grid).
Acceptance criteria
grep -c 'frombase\|class="from"\|Held — from' design/projects/roles-permissions.mock.htmlreturns 0 — the markup, the labels and both CSS rules.- Every checked box in panel 3 is the single accent-filled state, with
aria-label="Held"; unchecked rows are unchanged. roles-permissions.pngis re-exported from the edited markup.- The design-asset guard lane (
vitest --config vitest.design.config.ts) stays green. - The asset no longer specifies any control the shipped
Checkboxprimitive cannot render — which is the check that would have caught this.