Skip to content

Infrastructure: Qualify and require native Storybook CI coverage #4349

Open

Description

@JasonVMo

Current status - 2026-11-07

Authoritative native coverage and reliability promotion remain open. At the pre-main-merge #4463 head 7b7ef4c5a, all hosted PR checks passed, including Windows and Win32 Storybook, after shutdown/readiness/reporting repairs. This historical result is not proof of the next merge SHA or of interactive physical-input/capture authority.

The local hosted-style smoke records retained Windows 234 passed/78 skipped and Win32 214 passed/52 skipped; keyboard, physicalClick and wheel were disabled. #4441 retains the Windows physical-input failure and earlier Win32 physical-smoke failure, even though a later Win32 descriptor click passed.

Merged #4464 adds declared input/platform/scope lanes and truthful incomplete-lane reporting. #4466 splits the Win32 accessible and physical jobs, and #4467 tracks driver-enforced session input policy and delivered-input receipts. Promotion evidence should cite receipts, not declarations, once they land. Continue this issue's separate gates: owned authoritative interactive runners, actual executed cohorts/digests, required-status enforcement, explicit failure/skip/quarantine metadata, retention and escalation policy, and the representative sustained reliability window. Green semantic lanes or aggregate checks alone do not satisfy them. Coordinate #4451/#4345 without double-counting the evidence window.

Goal

Qualify and promote the native Storybook pipelines delivered by #4256 into reliable required desktop coverage. Parent: #4275.

Status - 2026-10-01

Open; all three pipelines exist and run native apps. macOS, Windows Fabric, and Win32 Paper explicitly build/verify native helpers, execute the owned stories-and-tests lifecycle, and retain diagnostics.

All three Storybook jobs passed in run 36927750317. The macOS log and retained Windows/Win32 reports each record 29 authored tests: 7 passed, 22 skipped. Current main catalogs contain 168 macOS, 158 Windows, and 152 Win32 stories. Hosted Windows/Win32 disable keyboard, physical click, and wheel; hosted macOS disables physical click.

Current main rules require only the PR status. The aggregate's needs excludes all three Storybook jobs and bundle-size; a green aggregate therefore does not make those checks required.

Remaining scope and acceptance criteria

  • Provision authoritative, owned interactive Windows/Win32 and managed macOS lanes with the capabilities their required tests actually need. Locked sessions, denied authority, helper failures, app crashes, and assertion failures have distinguishable results.
  • Publish an auditable executed cohort, not just discovered tests or render counts; integrate the regression-parity and accessibility follow-ups.
  • Reconcile endpoint-specific catalog identities and the actual WDIO story/test/source digests. Full catalogs intentionally differ. portablePlanDigest currently hashes only legacy static plans (none in the component catalog), so matching that digest does not prove callback equivalence.
  • Retain versioned machine-readable run, JUnit, event, process-ownership, helper identity, native log, tree, and available screenshot evidence for the active WDIO path. Failure upload must not mask the original error.
  • Define bounded retry policy and expiring quarantine records with owner, reason/issue, and expiry. Quarantined/skipped cases do not count toward exit coverage.
  • Name runner-capacity, escalation, artifact-retention/redaction/access, and fork-PR safety owners and document their operating policy.
  • Measure at least 100 representative executions per endpoint over 14 days, with at least 99% infrastructure success, zero leaked app/helper processes, zero unreleased input, and actionable metadata for every infrastructure failure.
  • Prevent all-skipped selected cohorts from being reported as successful completed coverage; preserve truthful mixed pass/skip reports.
  • Promote only qualified capabilities through the real required-status path, and prove a relevant failing native job blocks merging.
  • Preserve authenticated readiness, exact app/helper leases, loopback-only listeners, source verification, serial physical input, and cleanup/cancellation contracts.
  • Document adding/filtering/reproducing native tests and diagnosing failures. Pixel differences remain advisory, not an implicit merge gate.

Evidence and dependencies

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