Confidence scores
Updated 2026-05-19
Every component page shows a row of confidence chips near the top:
These tell you, at a glance, how well-curated each facet of a component’s documentation is. A chip is NOT a quality score for the component itself — it’s a score for the documentation about the component.
Reading the chips
The five facets
| Field | What it covers |
|---|---|
| anatomy | Named slots, layout regions, and structural parts (header, body, leading-icon, …). Drives the Anatomy section + design overlays. |
| variants | The full set of variant axes (State, Size, Theme, …) plus the values along each axis. Drives the Variants matrix. |
| motion | Interaction/animation patterns the component participates in (hover, press, expand, etc.). Linked from the Motion section. |
| a11y | WCAG 2.2 AA requirements and the patterns the component should follow. Linked from the Accessibility section. |
| content | UI copy guidance — labels, helper text, error states, tone. Component-specific (not category-defaulted). |
The three levels
| Level | Meaning | When you see it |
|---|---|---|
| high | Curated + complete. Reviewed by the design team; data fully filled in. Treat as authoritative. | Stable components with full guideline coverage. |
| medium | Curated but partial. Reviewed but at least one expected detail is missing. Useful, but verify edge cases against Figma or with the design team. | Components mid-curation; common during category-defaults rollout. |
| low | Stub or unreviewed. Auto-generated from the Figma sync; no human curation yet. Trust the registry shape (variants, properties) but check Figma for everything else. | Newly-synced components; stubs awaiting authoring. |
Where the values come from
anatomy / variants / motion / a11y
These four are category-level defaults. Every component in a category inherits the category’s confidence baseline from components/dist/categories/<category-slug>-defaults.json in the knowledge repo. The design team sets the level per category as it curates that category’s recipe set.
Example (Action category — Action-defaults.json):
{ "confidence": { "anatomy": "medium", "variants": "high", "motion": "high", "a11y": "high" }}Every Button, Link, Sticky footer page renders those four chips identically.
content
Synthesized per-component at page-generation time:
- high when the component has a hand-curated guideline (
components/src/guidelines/<slug>.json) AND that guideline includes acontent_guidelines.sectionsblock. - medium when the component has a hand-curated guideline but no content section.
- low for auto-stub guidelines or missing guidelines.
When to trust a page
Roughly:
- All chips high or medium → safe to use as-is for design + build work. Cross-reference Figma if you’re working on edge cases.
- One or more chips low → the page’s structural data (variants, properties, Figma URL) is still correct, but the guidance may be incomplete. Treat the page as a starting point; talk to the design team for prescriptive answers.
- All chips low → the component is freshly synced and the documentation is auto-stub. Trust only the registry-level facts (name, key, Figma node, variants). Everything else needs human input.
Improving a chip
Confidence isn’t a static rating — it bumps up as guidelines get curated:
- anatomy / variants / motion / a11y: bump by editing the category-defaults file in knowledge, then resync. Bumps lift every component in that category simultaneously.
- content: bump by curating the component’s guideline JSON to include a
content_guidelines.sectionsblock. Bumps just that one component.
The chip update reaches docs on the next vendor refresh (nightly cron, or manually via vendor-snapshot.yml).
Related
- Migrations — schema versions + parallel-change discipline; the contract the confidence data depends on
- State — sync state + tag versions across the three repos