Skip to the conformance report
Role scope
Participant
Report version
draft
Product version
0.1.0-draft
Report date
2026-08-19

Votinova — Accessibility Conformance Report (PARTICIPANT role)

Format: VPAT® 2.5 (WCAG edition) · Report version: draft · Report date: 2026-08-19

Product: Votinova · Product version: 0.1.0-draft · Evaluation dates: 2026-07-31 – 2026-08-19

Scope: the /join web participant experience and the iOS/Android participant app.

Conformance target: WCAG 2.2 Level A and Level AA.

Evaluation methods: automated audit (axe-core via Playwright, cumulative WCAG 2.2 AA rule tags); keyboard, focus-order, live-region and reduced-motion interaction walkthroughs (Playwright specs); and manual review of the rated surfaces' DOM and components. No rating is asserted without a recorded measurement (FR-003). A full assistive-technology user walkthrough (screen reader) is scheduled before first publication and will upgrade the interaction-heavy "manual" evidence to "at-walkthrough"; until then those rows are honestly marked as reviewed by inspection.

Measurement basis (automated rows): 11 of the 55 criteria in this report are rated from an automated axe-core run. Those rows rest on exactly the surface sample recorded in the evidence log: axe:participant/16types×13answer+13results-anatomies+7states(entry,denied,waiting,hidden,paused,disconnected,plan-limit). Until 2026-07-28 the sample behind every automated row was the /join join → active question → results path driven with a SINGLE MULTIPLE_CHOICE question: 1 of the catalogue's 16 question types, and no state outside the happy path (no empty, closed, denied, plan-limited or disconnected screen). The evaluation harness now drives all 16 types across their 13 distinct answer anatomies and 13 distinct results anatomies, plus 7 states.

Summary: 43 Supports · 1 Partially Supports · 11 Not Applicable · 0 Does Not Support (of 55 criteria).

Notes: timed live questions rely on WCAG's real-time event exception (Conformance Requirement 5); the affected timing criteria state this in their remarks. Brand orange (#FF6200) is a conscious, documented deviation on 1.4.3 (FR-013).

Corrections (in place, no rating changed): 2026-07-28 — Added the "Measurement basis" paragraph disclosing the surface sample behind the automated rows, which the report had never stated. No rating, remark or summary count changed. 2026-07-29 — T062 (H-017-11): the brand-contrast gate exception narrowed to NEUTRAL near-white surfaces only (channel spread <= 4) - tinted surfaces are no longer swept. Two real defects the old carve-out hid were remediated the same day: the sidebar active pill (orange on its own 12% tint, 2.61:1) now uses the neutral system surface, and the API-credential dismiss button (2.67:1 over the tinted panel) gained its own white background. The 1.4.3 brand deviation remains orange on WHITE/NEUTRAL only, as originally accepted. 2026-07-31 — Re-evaluation after the 2026-07-31 rebrand: the primary colour moved to blue #0071E3 across public and presenter surfaces (indigo-* ramp override). Evidence was re-collected the same day; brand text on tinted/soft surfaces now uses the 700 step (#005CBA) and accent-on-tint tokens the emphasis mix, so the ratios that the colour change had pushed under 4.5:1 measure compliant again. Report date advanced to the new evaluation end. 2026-08-07 — Re-measured 2026-08-07 after the harness cure (T156): the cookie-consent banner intercepted pointer events across the suite and the 2026-08 tariff moved the FREE participant cap, so the automated campaign re-ran end to end. The plan-limit join screen is now reached by filling to the API refusal instead of a hard-coded cap. No rating, remark or summary count changed; the evaluation period extends to 2026-08-07. 2026-08-19 — Re-measured 2026-08-19: the automated campaign re-ran end to end against develop after the spec 042 design-engine work. No rating, remark or summary count changed — only the measurement dates of the thirteen automated criteria; the evaluation period extends to 2026-08-19 and the report date advances with it.


Table 1 — Success Criteria, Level A

CriterionConformance LevelRemarks and Explanations
1.1.1 Non-text ContentSupportsManual review of the rated surfaces' DOM and components (non-text-alternatives-review).
1.2.1 Audio-only and Video-only (Prerecorded)Not ApplicableNo time-based media (audio/video) exists on the rated surfaces.
1.2.2 Captions (Prerecorded)Not ApplicableNo prerecorded video exists on the rated surfaces.
1.2.3 Audio Description or Media Alternative (Prerecorded)Not ApplicableNo prerecorded video exists on the rated surfaces.
1.3.1 Info and RelationshipsSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
1.3.2 Meaningful SequenceSupportsManual review of the rated surfaces' DOM and components (dom-reading-order).
1.3.3 Sensory CharacteristicsSupportsManual review of the rated surfaces' DOM and components (instructions-not-sensory-only).
1.4.1 Use of ColorSupportsManual review of the rated surfaces' DOM and components (color-not-sole-means).
1.4.2 Audio ControlNot ApplicableNo audio plays automatically on the rated surfaces.
2.1.1 KeyboardSupportsInteraction walkthrough — image-pin-keyboard.spec.ts exercises this behaviour (keyboard / focus / live-region / reduced-motion).
2.1.2 No Keyboard TrapSupportsInteraction walkthrough — live-results-announce.spec.ts#tab-out exercises this behaviour (keyboard / focus / live-region / reduced-motion).
2.1.4 Character Key ShortcutsSupportsManual review of the rated surfaces' DOM and components (no-single-character-key-shortcuts).
2.2.1 Timing AdjustableSupportsTimed live questions rely on the real-time event exception (WCAG Conformance Requirement 5): the timing is an essential part of a live, synchronous activity.
2.2.2 Pause, Stop, HideSupportsInteraction walkthrough — reduced-motion.spec.ts exercises this behaviour (keyboard / focus / live-region / reduced-motion).
2.3.1 Three Flashes or Below ThresholdSupportsManual review of the rated surfaces' DOM and components (no-flashing-content).
2.4.1 Bypass BlocksSupportsManual review of the rated surfaces' DOM and components (no-repeated-blocks-single-view).
2.4.2 Page TitledSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
2.4.3 Focus OrderSupportsInteraction walkthrough — live-results-announce.spec.ts#focus-order exercises this behaviour (keyboard / focus / live-region / reduced-motion).
2.4.4 Link Purpose (In Context)SupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
2.5.1 Pointer GesturesSupportsManual review of the rated surfaces' DOM and components (no-path-or-multipoint-gestures).
2.5.2 Pointer CancellationSupportsManual review of the rated surfaces' DOM and components (pointer-cancellation-up-event).
2.5.3 Label in NameSupportsManual review of the rated surfaces' DOM and components (label-in-name-review).
2.5.4 Motion ActuationSupportsManual review of the rated surfaces' DOM and components (no-motion-actuation).
3.1.1 Language of PageSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
3.2.1 On FocusSupportsManual review of the rated surfaces' DOM and components (no-context-change-on-focus).
3.2.2 On InputSupportsManual review of the rated surfaces' DOM and components (no-context-change-on-input).
3.2.6 Consistent HelpNot ApplicableThe join view exposes no help mechanism; the criterion does not apply.
3.3.1 Error IdentificationSupportsManual review of the rated surfaces' DOM and components (join-form-error-identification).
3.3.2 Labels or InstructionsSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
3.3.7 Redundant EntryNot ApplicableNo step re-asks information already provided.
4.1.2 Name, Role, ValueSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).

Table 2 — Success Criteria, Level AA

CriterionConformance LevelRemarks and Explanations
1.2.4 Captions (Live)Not ApplicableNo live audio-only content exists on the rated surfaces.
1.2.5 Audio Description (Prerecorded)Not ApplicableNo prerecorded video exists on the rated surfaces.
1.3.4 OrientationSupportsManual review of the rated surfaces' DOM and components (no-orientation-lock).
1.3.5 Identify Input PurposeSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
1.4.3 Contrast (Minimum)Partially SupportsConscious, documented brand deviation (FR-013): brand orange #FF6200 on white measures ~3:1, below the 4.5:1 minimum. Accepted by the product owner over the off-brand accessible alternative; all other text meets 4.5:1. Recorded here so the claim stays honest.
1.4.4 Resize TextSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
1.4.5 Images of TextSupportsManual review of the rated surfaces' DOM and components (no-images-of-text).
1.4.10 ReflowSupportsManual review of the rated surfaces' DOM and components (reflow-320-no-h-scroll).
1.4.11 Non-text ContrastSupportsManual review of the rated surfaces' DOM and components (non-text-contrast-review).
1.4.12 Text SpacingSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
1.4.13 Content on Hover or FocusSupportsManual review of the rated surfaces' DOM and components (hover-focus-content-dismissable).
2.4.5 Multiple WaysNot ApplicableThe join view is a single-step process; the criterion does not apply.
2.4.6 Headings and LabelsSupportsManual review of the rated surfaces' DOM and components (headings-and-labels-review).
2.4.7 Focus VisibleSupportsManual review of the rated surfaces' DOM and components (focus-visible-review).
2.4.11 Focus Not Obscured (Minimum)SupportsManual review of the rated surfaces' DOM and components (focus-not-obscured-review).
2.5.7 Dragging MovementsSupportsInteraction walkthrough — image-pin-keyboard.spec.ts#no-drag exercises this behaviour (keyboard / focus / live-region / reduced-motion).
2.5.8 Target Size (Minimum)SupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
3.1.2 Language of PartsSupportsAutomated audit (axe-core, cumulative WCAG 2.2 AA rule tags).
3.2.3 Consistent NavigationSupportsManual review of the rated surfaces' DOM and components (consistent-nav-review).
3.2.4 Consistent IdentificationSupportsManual review of the rated surfaces' DOM and components (consistent-identification-review).
3.3.3 Error SuggestionSupportsManual review of the rated surfaces' DOM and components (join-form-error-suggestion).
3.3.4 Error Prevention (Legal, Financial, Data)Not ApplicableThe anonymous participant surface takes no legal, financial or data-modifying input.
3.3.8 Accessible Authentication (Minimum)Not ApplicableParticipants are anonymous; no authentication step exists.
4.1.3 Status MessagesSupportsInteraction walkthrough — live-results-announce.spec.ts exercises this behaviour (keyboard / focus / live-region / reduced-motion).

Generated from `acr/evidence/participant-draft.json` (spec 017 T028/T029). Re-issue via `acr:build` after bumping `acr/PUBLICATION.json` (see RE-ISSUE.md).