Tracker: w3c/aria (new issue, relates to #2154)
Contract: C-06b (DESIGN_INTENT: descriptive aria-busy text implies exposure after busy clears) / C-10 (UNCLEAR)
Environment: Windows 10 19045; NVDA 2026.1.1 (eSpeak; NVDA's UIA-for-Chromium setting = No); Chrome 149.0.7827.54 (CDP-driven); Firefox 155.0.1 (WebDriver BiDi-driven). Data: probe round-2, 2026-09-06, run ids chrome-20260906T123244Z and firefox-20260906T125205Z, 10 fresh navigations per engine per fixture; a formal rerun under the frozen protocol is scheduled for 2026-09-15/16.
Summary
Two points where implementations diverge and the text is silent. (1) After aria-busy clears, is the deferred update expected to be announced? NVDA on both Chrome and Firefox never announces it. (2) Three updates 50 ms apart to the same polite region: with NVDA, Chrome yields 2 announcements and Firefox 3. Related to #2154 (initial content vs updates).
Related entries (searched 2026-09-07)
#2154 (open); #2331 (ariaNotify interrupt, open) for the notification-API side.
Expected
(1) aria-busy: "assistive technologies may want to wait until the modifications are complete before exposing them" — silent on what happens after. (2) No text on coalescing or queue depth for live regions.
Observed
(1) busy-then-clear: 0/10 announced on both engines. (2) triple update at 50 ms: Chrome mode 2 announcements, Firefox mode 3 (10/10 present on both).
Minimal fixture
Open the page, press the button (#go); the message contains a per-run nonce (?nonce= query, fallback literal).
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>PercA11y probe c2-007-l0v0p0a0r0b0u0c2f0n0k0</title>
<meta name="probe-vector" content='{"lifecycle":"pre_existing_empty","visibility":"none","politeness":"polite","atomic":"default","relevant":"default","busy":"none","update_kind":"text_content","cadence":"triple_50ms","focus":"none","container":"light_dom","channel":"live_region"}'>
<meta name="probe-expectation" content="OBSERVED">
<meta name="probe-allowed" content='{"presence":"OBSERVED","count_min":1,"count_max":3,"text_mode":"any_issued"}'>
</head>
<body data-probe="c2-007-l0v0p0a0r0b0u0c2f0n0k0">
<main>
<h1>Probe program c2-007-l0v0p0a0r0b0u0c2f0n0k0</h1>
<h2 id="editor" tabindex="-1">Editor</h2>
<button id="go">Run</button>
<div id="mount"></div>
<script>
var nonce=new URLSearchParams(location.search).get('nonce')||'NONCE0';
var T=function(i){return 'Item '+nonce+'-'+i;};
var OFF=[0,50,100],doc=document,root=null,reg=null;
function region(t,b){var e=doc.createElement('div');e.id='live';e.setAttribute('aria-live','polite');
var s=doc.createElement('span');s.textContent=t;e.appendChild(s);return e;}
function upd(i){var t=T(i);reg.textContent=t;}
function seq(){OFF.forEach(function(d,i){var f=function(){upd(i+1);if(i===OFF.length-1)done();};if(d){setTimeout(f,d);}else{f();}});}
function done(){}
function trigger(){seq();}
function setup(){root=document.getElementById('mount');reg=region('',false);root.appendChild(reg);document.body.setAttribute('data-probe-ready','1');}
addEventListener('load',setup);
document.getElementById('go').addEventListener('click',trigger);
</script>
</main>
</body>
</html>
Provenance
The generated-program vector is in <meta name="probe-vector">. Raw NVDA speech logs, timestamps and evaluation tooling are available on request.
Tracker: w3c/aria (new issue, relates to #2154)
Contract: C-06b (DESIGN_INTENT: descriptive aria-busy text implies exposure after busy clears) / C-10 (UNCLEAR)
Environment: Windows 10 19045; NVDA 2026.1.1 (eSpeak; NVDA's UIA-for-Chromium setting = No); Chrome 149.0.7827.54 (CDP-driven); Firefox 155.0.1 (WebDriver BiDi-driven). Data: probe round-2, 2026-09-06, run ids chrome-20260906T123244Z and firefox-20260906T125205Z, 10 fresh navigations per engine per fixture; a formal rerun under the frozen protocol is scheduled for 2026-09-15/16.
Summary
Two points where implementations diverge and the text is silent. (1) After aria-busy clears, is the deferred update expected to be announced? NVDA on both Chrome and Firefox never announces it. (2) Three updates 50 ms apart to the same polite region: with NVDA, Chrome yields 2 announcements and Firefox 3. Related to #2154 (initial content vs updates).
Related entries (searched 2026-09-07)
#2154 (open); #2331 (ariaNotify interrupt, open) for the notification-API side.
Expected
(1) aria-busy: "assistive technologies may want to wait until the modifications are complete before exposing them" — silent on what happens after. (2) No text on coalescing or queue depth for live regions.
Observed
(1) busy-then-clear: 0/10 announced on both engines. (2) triple update at 50 ms: Chrome mode 2 announcements, Firefox mode 3 (10/10 present on both).
Minimal fixture
Open the page, press the button (
#go); the message contains a per-run nonce (?nonce=query, fallback literal).Provenance
The generated-program vector is in
<meta name="probe-vector">. Raw NVDA speech logs, timestamps and evaluation tooling are available on request.