Skip to content

Infrastructure: Add native accessibility assertions and Storybook test support #4255

Closed

Description

@JasonVMo

Goal

Deliver portable native accessibility assertion support and component-authored Storybook tests. Parent: #4275.

Status - 2026-10-01

Completed assertion-foundation milestone. Full cohort conformance, reporting, and authoritative qualification are preserved in #4343. Native state-projection gaps are tracked separately in #4346. Closing this delivered foundation does not certify the original full accessibility cohort.

Delivered

  • PR Infrastructure: add native desktop driver providers #4306 added source-built macOS AX and Windows/Win32 UIA providers with normalized role, accessible-name, state, text, value, and focus lookup/assertion support.
  • PR Add wdio test support in stories #4313 delivered typed, named executable wdio callbacks, source-digest verification, per-case worker/session isolation, and integration with the owned native smoke lifecycle.
  • PR Fix desktop focus management and accessibility action handling #4314 expanded real native focus, state, disabled-stop, activation, Input, Switch, TabList, and FocusZone coverage; it also repaired macOS modifier handling and CI Keyboard navigation setup.
  • Current main discovers 29 cases across 17 stories and ten component/primitive families on each endpoint, rather than only the original Button/Checkbox/Input static-plan foundation.
  • Capability and native-state limitations have explicit skip reasons rather than synthetic attribute passes.

The supported contract is named WDIO callbacks and portable native assertions. The old expectRole/expectName action spellings, XCUI numeric-role proposal, Appium backend, and parameters.desktopTest draft are superseded.

Evidence boundary

PR #4314 records an interactive macOS run with 20 passes and two native AX-state skips at its tested revision. The newer October 1 CI run selects 29 cases per endpoint and records 7 passes / 22 skips in each hosted lane.

Those are scoped execution results, not proof that every selected case is accessibility coverage or that missing hosted input has been qualified.

Follow-up

Package-level prop tests/conformance remain with #4216/#4214. Native attribute reads do not claim VoiceOver/NVDA or actual assistive-action dispatch qualification.

Evidence

Activity

  1. changed the title [-]Add accessibility assertions to Storybook story tests[/-] [+]Infrastructure: Add accessibility assertions to Storybook story tests[/+] on Aug 21, 2026
  2. JasonVMo commented on Sep 3, 2026

    @JasonVMo
    ContributorAuthor

    Status update - 2026-09-03

    PR #4306 completed the native accessibility foundation: the macOS and shared
    Windows/Win32 providers expose normalized accessibility snapshots and support
    portable role, accessible-name, state, text, and value lookup/assertion paths.
    stories-and-tests now executes component-authored plans through those native
    providers. Button, Checkbox, and Input currently provide the first role,
    state, focus, and value plans.

    The merged V1 schema uses generic
    { expect: { state, target, value } } steps rather than the issue's earlier
    proposed expectRole/expectName action spellings; acceptance should be judged
    by the portable behavior, not those obsolete draft names.

    Remaining: expand beyond the three-story cohort, add deterministic
    accessible-name and positive/negative keyboard-reachability coverage, verify
    the switch mapping, add accessibility-specific result summaries, and run the
    full initial cohort on authoritative interactive Windows and managed macOS
    environments. Hosted capability skips are coverage information, not completion.

  3. changed the title [-]Infrastructure: Add accessibility assertions to Storybook story tests[/-] [+]Infrastructure: Add native accessibility assertions and Storybook test support[/+] on Oct 1, 2026
  4. JasonVMo commented on Oct 1, 2026

    @JasonVMo
    ContributorAuthor

    The native assertion and authored-test foundation is delivered by #4306/#4313/#4314. Closing the delivery milestone, not claiming full conformance: complete cohort/reporting/qualification remains #4343 and native accessibility-state projection gaps are tracked in #4346.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions