Skip to content

Stop suppressing accessibility-test dispatcher failures - #85

Draft
Blackspirits wants to merge 2 commits into
upl/review-base-40c9from
test/accessibility-drainjobs-no-catch-40c9
Draft

Blackspirits wants to merge 2 commits into
upl/review-base-40c9from
test/accessibility-drainjobs-no-catch-40c9

Conversation

@Blackspirits

@Blackspirits Blackspirits commented Sep 13, 2026

Copy link
Copy Markdown
Owner

Summary

The accessibility sweep still wraps Dispatcher.UIThread.RunJobs() in a blanket catch (Exception). That suppression was added for one known Video OCR race: its background media probe could post a message box after the test had already closed the window.

Upstream commit 6840e797ae5b265a457e5086108f7d93ae45c85f now fixes that race at the source by returning when the Video OCR window is already closing. Keeping the blanket catch after that fix only hides unrelated asynchronous failures.

This change:

  • removes the dispatcher exception suppression entirely;
  • lets any unexpected dispatcher failure fail the accessibility sweep;
  • updates the helper comment to document why the old exception allowance is no longer needed.

Validation

  • based on upstream 40c97b2def70f1c7b919602fbf4e7bed7d0c9fd3
  • upstream fixed the only documented closed-owner race in VideoOcrViewModel.OnLoaded
  • diff is limited to tests/UI/Logic/AccessibleNamesTests.cs
  • full solution restore passed
  • full solution build passed
  • full solution test suite passed on the first run
  • UI suite: 5,149 passed, 9 skipped, 0 failed (5,158 total)
  • retry step was not used
  • validation run: #34767627147

No production behavior is changed.

This supersedes the narrower approach in draft PR #82 if validation remains green.

AI assistance: ChatGPT was used to re-audit the accessibility test harness after the upstream Video OCR race fix and remove now-unnecessary exception suppression.

@Blackspirits
Blackspirits changed the base branch from main to upl/review-base-40c9 September 13, 2026 16:05

@Blackspirits Blackspirits left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Independent adversarial re-check: upstream 6840e79 fixes the only documented closed-owner race at the production source, so retaining any dispatcher exception suppression in the accessibility sweep is no longer justified. The final diff only removes that suppression and updates its rationale. Full CI run #34767627147 passed restore, build and the complete solution test suite on the first run; UITests reported 5,149 passed, 9 skipped, 0 failed. Retry was not used. No blocker identified. Keep draft; no merge or upstream change performed.

@Blackspirits Blackspirits left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Independent adversarial re-check: upstream 6840e79 fixes the only documented closed-owner race at the production source, so retaining any dispatcher exception suppression in the accessibility sweep is no longer justified. The final diff only removes that suppression and updates its rationale. Full CI run #34767627147 passed restore, build and the complete solution test suite on the first run; UITests reported 5,149 passed, 9 skipped, 0 failed. Retry was not used. No blocker identified. Keep draft; no merge or upstream change performed.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant