Skip to content

Avoid re-announcing stale transcript failures on locale switch - #3106

Draft
Chris0Jeky wants to merge 2 commits into
mainfrom
codex/1871-transcript-error-announcement
Draft

Chris0Jeky wants to merge 2 commits into
mainfrom
codex/1871-transcript-error-announcement

Conversation

@Chris0Jeky

@Chris0Jeky Chris0Jeky commented Sep 15, 2026

Copy link
Copy Markdown
Owner

Purpose

Take #1871 review-i18n item 4 as a bounded accessibility slice. Transcript errors intentionally store a catalog key so visible copy can follow a locale change, but the visible paragraph was also role="alert". Changing locale therefore announced the same already-known failure again as though a new failure occurred.

The implementation separates the two responsibilities:

  • visible error copy remains reactive to locale changes;
  • a visually hidden live alert snapshots the translation active when a new transport failure arrives;
  • changing locale alone does not mutate that alert;
  • beginning a later request clears it, so a later failure can announce normally.

Red → green evidence

RED — exact test-only head. Commit 34430f9768b9b2515ae8da8702a48e90e379c9be added only TranscriptEvidenceAnnouncement.spec.ts. CI run 34916715674, Ubuntu frontend job 104215866818, passed lint, typecheck, production build, and PWA validation before the frontend test phase failed. Its archived JUnit receipt reports 6,913 tests and exactly one failure, the new case:

  • the component had no [data-testid="transcript-evidence-error-announcement"] node;
  • the rendered visible failure still carried role="alert".

GREEN candidate. Commit 1f975bd64c6f24e6ea10bd249853b59d806d8754 snapshots the failure-time translation for the one-time live region while retaining catalog-key-driven visible copy. Its exact-head hosted matrix is the evidence gate; this PR remains draft until that matrix settles.

Scope

Refs #1871

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

Labels

None yet

Projects

Status: Pending

Development

Successfully merging this pull request may close these issues.

1 participant