Foundations and vocabulary
An instrument, not a dashboard.
Two ramps and one accent. A monospace face only where a value is literally a URL, a rule id or captured markup. Severity, confidence and status are three separate vocabularies, and every one of them reads in greyscale — because a finding is read where we cannot follow it, in a ticket, a printout or a screenshot.
Colour
Decoration comes from the ramps; text and controls come from the semantic tokens above them.
Neutral
- 100
- 200
- 300
- 400
- 500
- 600
- 700
- 800
- 900
Accent
- 100
- 200
- 300
- 400
- 500
- 600
- 700
- 800
- 900
There is no red and no green. Seriousness is carried by weight and shape so that a report pasted into a black-and-white ticket still reads, and so that the roughly one reader in twelve who cannot separate the two hues loses nothing. The accent is reserved for interaction — links, the focus ring, the active navigation mark, the primary button — and for the single severity that is a warning.
Three of the semantic tokens deliberately differ from the ramp step they look like, because the ramp step fails a contrast bar: the tertiary text colour, the control outline, and the accent itself. ADR-011 names each. The contrast test in packages/ui/test/unit/tokens.test.ts is what keeps them where they are.
Three vocabularies
Three questions, three treatments. Never the same visual language twice.
Severity
How serious is the defect? A chip, ordered by how much ink it puts on the page, with an icon and the word.
- Error
- Warning
- Info
Confidence
How sure are we of the interpretation? Plain text. Heuristic goes italic under a dashed rule and can never be an Error.
- Certain
- Likely
- Heuristic
Status
How does this relate to the previous audit? A monospace mark and the word, in the body colour, with no hue at all.
- New
- Persisting
- Resolved
- Regressed
- Unknown
Notices
Emphasis by the weight of an edge.
Skipped: the sitemap was unavailable during this audit, so there were no dates to read. A skipped check is neither a pass nor a failure.
Data patterns
A bar is decoration; the number beside it is the fact.
Affected population
42 of 3,461 pages
12 of 18 categories
The bar is aria-hidden and the count is stated in text beside it. A meter a screen reader announces as a percentage of nothing is worse than no meter.
Provenance
Deterministic Evidence → rule → result. The factual foundation.
Model analysis Evidence → interpretation → conclusion. Capped at Warning, and never an Error.
Every finding cites the page, selector or configuration path it came from. A defect we cannot attribute is reported as unattributed rather than blamed on a guess.