Files
tech-log-frontend/docs/accessibility/manual-checklist.md
T

1.9 KiB

Manual accessibility review checklist

Automated axe checks do not establish WCAG conformance. A human reviewer must review all six route records in artifacts/tests/a11y-manual/ against one release candidate and sign them. The required scope is derived from the route registry: APP_HOME, EXAMPLES_UI, EXAMPLES_STATES, EXAMPLES_AUTH, REFERENCE_RESOURCE_LIST, and NOT_FOUND. Copy the template fields exactly; the gate rejects blank identity/timestamp/signature fields, pending verdicts, mismatched release IDs, or missing routes.

Allowed item verdicts:

  • pass
  • not-applicable (<specific reason>)

Required record:

Status: reviewed
Route ID: APP_HOME
Release ID: <immutable release ID>
Reviewer: <human reviewer identity>
Reviewed at: <RFC 3339 timestamp>
Signature: <reviewer identity or approved signature reference>
Attestation: accepted
M1 Keyboard: pass
M2 Visible focus: pass
M3 Route focus: pass
M4 Modal focus: not-applicable (no modal on this route)
M5 Error association: not-applicable (no form error on this route)
M6 Color signal: pass
M7 Reduced motion: pass
Screen reader: pass
Notes: <observations and linked defect IDs>

The reviewer must verify:

  • M1: every action works without a pointing device
  • M2: every focused element has a visible indicator
  • M3: route transitions move focus to a deterministic target
  • M4: modal focus is trapped and restored, when a modal exists
  • M5: errors are programmatically associated with their controls, when present
  • M6: state never relies on color alone
  • M7: non-essential motion is suppressed with reduced-motion preference
  • Screen reader: headings, live regions, errors, and actions are announced once

EXAMPLES_UI requires real M4 modal and M5 field-error review; those items must not be marked not-applicable on that route. Passing automated evidence means only that tested pages had no critical or serious axe findings under the recorded Chromium, Firefox, and WebKit runs.