2 definitions in this file:
Identifies this document block as a checklist.
The checklist items, in display order. Each item is one concrete thing to verify, do, or confirm. Order is significant for ordered checklists, so tools MUST preserve it.
Min items: 1
An optional heading for the checklist (e.g., 'Accessibility review', 'Before you ship', 'Integration checklist'). Use it to name the pass the items belong to.
Whether the items must be worked through in order. Defaults to false (an independent checklist where items can be checked in any order). Set true when each item depends on the previous one. Tools SHOULD render unordered checklists as checkboxes and ordered ones as a numbered sequence.
Default: false
References:
checklistItem
{
"kind": "checklist",
"title": "Button integration review",
"ordered": false,
"items": [
{
"label": "Use a single primary-emphasis button per surface.",
"level": "must",
"criterion": "single-primary-action",
"category": "visual-design"
},
{
"label": "Give every icon-only button an accessible name via aria-label.",
"description": "The label should describe the action, not the icon (e.g., 'Close dialog').",
"level": "must",
"criterion": "icon-button-accessible-name",
"category": "accessibility"
},
{
"label": "Use a link, not a button, for navigation to a different page or URL.",
"level": "must-not",
"category": "interaction"
},
{
"label": "Confirm the touch target is at least 44×44 px on coarse-pointer devices.",
"level": "should",
"criterion": "touch-target-minimum",
"category": "accessibility"
},
{
"label": "Provide a loading state for buttons that trigger async actions.",
"level": "should",
"category": "interaction",
"optional": true
}
]
}
The check, written as a concrete, imperative statement an agent can act on and then mark done or not done (e.g., 'Give every icon-only button an aria-label', 'Keep one primary-emphasis button per surface'). MUST be specific enough to confirm. Avoid vague phrasing like 'check accessibility'.
Optional detail: how to satisfy the item, what to watch for, or why it matters. Keep the actionable instruction in label and use this for supporting context.
How strictly this item must be satisfied, named for RFC 2119 requirement levels: 'must' (a hard gate; failing it is a defect), 'should' (follow unless justified), 'should-not', 'must-not'. Agents treat must/must-not items as hard gates. When omitted, the item is a recommended check.
Optional identifier of a testable success criterion (from a guideline or accessibility block on the same entity) that verifies this item. MUST be lowercase kebab-case. Lets an agent jump from the checklist item to the criterion that defines pass/fail.
Pattern: ^[a-z][a-z0-9-]*$
Optional discipline this item belongs to, used to group a long checklist. Standard values match the guideline categories: 'visual-design', 'interaction', 'accessibility', 'content', 'motion', 'development'. Custom values are allowed and SHOULD be lowercase kebab-case.
Whether the item can be skipped without failing the checklist. Defaults to false. Tools MAY render optional items distinctly (e.g., an 'optional' label).
Default: false
References:
richText, conformanceLevel
{
"label": "Give every icon-only button an accessible name via aria-label.",
"description": "Screen readers announce nothing for an icon with no text. The label should describe the action, not the icon (e.g., 'Close dialog', not 'X icon').",
"level": "must",
"criterion": "icon-button-accessible-name",
"category": "accessibility"
}
Design System Documentation Spec (DSDS) 0.12.0 — Draft Specification
GitHub