Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Infrastructure: Complete portable Storybook accessibility coverage and reporting

Open
#4,343 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
typescript

Research direction

Start with the native assertion/test integration reference and packages/agentic/storybook-desktop/src/testing/runWdioTests.ts, then review packages/agentic/components/WIN32-FOCUS-PLAN.md and the linked prerequisite work. Run the existing WDIO cohort to understand its current cases and result data. Done means the documented cohort has deterministic native accessibility assertions, authoritative endpoint results, versioned reports, compatibility tests, documentation, and explicit exclusions or diagnostics.

Written by the indexing model from the issue text.

Description

Goal

Complete the portable native accessibility cohort, qualification, and reporting above the assertion foundation delivered by #4255. Parent: #4275.

Status - 2026-10-01

Open; assertion support and a broader behavioral suite are implemented, full conformance is not.

Native providers normalize role/name/state/text/value; catalog tests now use top-level named WDIO callbacks, not the obsolete parameters.desktopTest proposal. Merged PRs #4306, #4313, and #4314 provide real native role/state/focus and interaction assertions.

Current main discovers 29 cases across 17 stories and ten component/primitive families on each endpoint. That is not 29 accessibility-conformance cases: some test motion/layout, many require unavailable hosted input, and Radio/Tag/Accordion/standalone Tab plus the negative Divider case are not a complete authored accessibility cohort.

The active WDIO run.json contains per-case status/error/skip data, but no dedicated role/name/reachability counters or observed-primary-element summary.

Remaining scope and acceptance criteria

  • Complete the initial Button, Checkbox, Radio, Switch, Tag, Tab, and Accordion cohort, plus Divider or another documented noninteractive negative fixture.
  • Each applicable case asserts a deterministic accessible name, normalized role, relevant native state/value, and positive or negative keyboard reachability.
  • Reachability proves bounded real Tab navigation where required; an enabled flag, programmatic focus, or component-owned state is not substituted for actual keyboard/native accessibility evidence.
  • Test both label-prop names and deterministic visible-label fallback; intentional name/role mismatches fail clearly in portable contract tests.
  • Verify and document the Switch role mapping against the actual native Windows/Win32/macOS control representations. Keep normalization in the provider boundary rather than platform-native literals in shared assertions.
  • Add versioned accessibility reporting with passed/failed/skipped role/name/reachability counts, observed native attributes, and actionable unsupported-state diagnostics.
  • Run the complete cohort on authoritative interactive Windows and managed macOS endpoints, publishing exact runtime/helper/manifest identities and results. Qualify Win32 separately where its provider/control behavior differs.
  • Resolve or explicitly track native disabled/selected/enabled-state projection gaps; behavioral callbacks and focus exclusion must not be claimed as AX/UIA state passes.
  • Required coverage excludes quarantine and capability skips. Preserve explicit reasoned exclusions until the native catalog crashes are fixed.
  • Public type/report changes have compatibility tests, documentation, appropriate changesets, and the owning package/root validation.

Scope boundary

This issue owns native-tree assertions, their cohort, and reports. Component prop-propagation/unit coverage and the package-wide conformance registry remain with #4216/#4214. Manual VoiceOver/NVDA validation is separate; do not claim it from UIA/AX assertions.

Evidence

Dominant language
TypeScript
Stars
1.4k
Forks
179
Avg merge
2d 9h
Merged PRs (30d)
30

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from microsoft/fluentui-react-native

All issues in microsoft/fluentui-react-native

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.