UNPKG

paqad-ai

Version:

Spec-driven development framework — AI agents that think before they type

53 lines (39 loc) • 2.65 kB
# WCAG 2.2 Mapping verified: 2026-11-02 The most common audit findings → WCAG 2.2 success criterion ids. Cite the id in every finding (analog of WSTG ids in pentest). ## Perceivable - `WCAG-2.2-1.1.1`: Non-text Content (Level A). Missing `alt`, decorative images without `alt=""`. - `WCAG-2.2-1.3.1`: Info and Relationships (Level A). Missing semantic landmarks, headings out of order, missing form labels. - `WCAG-2.2-1.4.3`: Contrast (Minimum) (Level AA). Text < 4.5:1, large text < 3:1. - `WCAG-2.2-1.4.4`: Resize Text (Level AA). Fixed `px` font sizes that prevent zoom. - `WCAG-2.2-1.4.11`: Non-text Contrast (Level AA). Focus rings, form borders, icon-only buttons < 3:1. - `WCAG-2.2-1.4.12`: Text Spacing (Level AA). Layouts that break when text spacing is increased. ## Operable - `WCAG-2.2-2.1.1`: Keyboard (Level A). Anything pointer-only. - `WCAG-2.2-2.1.2`: No Keyboard Trap (Level A). Modals without escape, focus loops. - `WCAG-2.2-2.4.3`: Focus Order (Level A). DOM order vs visual order mismatch; positive `tabindex`. - `WCAG-2.2-2.4.7`: Focus Visible (Level AA). `outline: none` without replacement. - `WCAG-2.2-2.4.11`: Focus Not Obscured (Minimum) (Level AA, new in 2.2). Sticky headers covering focused element. - `WCAG-2.2-2.5.5`: Target Size (Enhanced), best practice; target < 24×24 fails. - `WCAG-2.2-2.5.8`: Target Size (Minimum) (Level AA, new in 2.2). Pointer targets < 24×24 CSS pixels. - `WCAG-2.2-3.3.7`: Redundant Entry (Level A, new in 2.2). Forms that re-ask for already-provided info. - `WCAG-2.2-3.3.8`: Accessible Authentication (Minimum) (Level AA, new in 2.2). CAPTCHAs without alternative. ## Understandable - `WCAG-2.2-3.1.1`: Language of Page (Level A). Missing `<html lang>`. - `WCAG-2.2-3.2.2`: On Input (Level A). Form fields that auto-submit on change. ## Motion / preferences - `WCAG-2.2-2.3.3`: Animation from Interactions (Level AAA, informational). Respect `prefers-reduced-motion`. ## axe-core rule → WCAG mapping (subset) | axe rule id | WCAG id | | ----------------------- | ---------------- | | `color-contrast` | `WCAG-2.2-1.4.3` | | `image-alt` | `WCAG-2.2-1.1.1` | | `button-name` | `WCAG-2.2-4.1.2` | | `link-name` | `WCAG-2.2-2.4.4` | | `label` | `WCAG-2.2-1.3.1` | | `landmark-one-main` | `WCAG-2.2-1.3.1` | | `focus-order-semantics` | `WCAG-2.2-2.4.3` | | `tabindex` | `WCAG-2.2-2.4.3` | | `target-size` | `WCAG-2.2-2.5.8` | | `html-has-lang` | `WCAG-2.2-3.1.1` | axe emits more rules than this; map novel ones at finding time using the published axe-core docs.