Files
SoulStream/handoff/rounds/ins-r28-fields.txt
T
KeelrLeek 9f0601027c android: the handoff — the pending rounds, the pipeline, and what is unverified
Everything written this session that has not been through the device: rounds 43
to 48 (each patch adversarially verified, 43's transient-notice expectation
fixed), a partial round 49, the pipeline scripts, the Android Auto design and
the icon comparison mock. Also the two harness changes that were never A/B'd —
adaptive waits, which may only shorten a declared wait and never lengthen it,
and a ship that runs the mock walk and the deploy at the same time. The A/B and
its 255-step baseline are in handoff/tools; main stays at what the phone has
actually walked.
2026-09-14 07:57:41 -05:00

47 lines
3.2 KiB
Plaintext

/* the number this round exists to hold at zero, and who broke it */
a11yAnon: a11yNone.length,
a11yWho: a11yNone.slice(0, 3).map(whatis).join(' | '),
a11yBad: a11yAll.map(function (el) { var nm = aname(el); if (!nm) return ''; var j = junk(el, nm); return j ? j + ':' + whatis(el) + ':' + nm.slice(0, 22) : ''; }).filter(Boolean).slice(0, 3).join(' | '),
/* a layer that is off-screen but still in the tree: the closed
sheets, the hidden mini bar, the nav under a sheet */
a11yGhost: (function () {
var n = 0;
[].forEach.call(document.querySelectorAll('.sheet:not(.up), .halfsheet:not(.up), .mini.hidden, .nav.gone'), function (h) {
if (h.matches(A11Y_SEL) && exposed(h)) n++;
n += [].filter.call(h.querySelectorAll(A11Y_SEL), exposed).length;
});
return n;
})(),
/* a control that LOOKS chosen and does not say so */
a11yState: (function () {
var bad = [];
[].forEach.call(document.querySelectorAll('.row .sw'), function (sw) {
var b = sw.closest('button, [role=button]');
if (!b || !exposed(b)) return;
var want = sw.classList.contains('on') ? 'true' : 'false';
if (b.getAttribute('role') !== 'switch' || b.getAttribute('aria-checked') !== want) bad.push('sw:' + aname(b).slice(0, 18));
});
[].forEach.call(document.querySelectorAll('.segtabs button, .np-faces .fbtn, .nav button'), function (b) {
if (!exposed(b)) return;
var want = b.classList.contains('on') ? 'true' : 'false';
if (b.getAttribute('role') !== 'tab' || b.getAttribute('aria-selected') !== want) bad.push('tab:' + aname(b).slice(0, 18));
});
[].forEach.call(document.querySelectorAll('button.chip'), function (b) {
if (!exposed(b) || b.classList.contains('tchip')) return;
if (!b.hasAttribute('aria-pressed')) { if (b.classList.contains('on')) bad.push('chip:' + aname(b).slice(0, 18)); return; }
if (b.getAttribute('aria-pressed') !== (b.classList.contains('on') ? 'true' : 'false')) bad.push('chip:' + aname(b).slice(0, 18));
});
return bad.slice(0, 3).join(' | ');
})(),
/* the layer on top: its role, whether it is modal, its name, and
whether the focus went with it */
dlg: (function () {
var d = document.querySelector('.viewer') || document.querySelector('.syncroom')
|| document.querySelector('.halfsheet.up') || document.querySelector('.sheet.up');
if (!d) return '';
var nm = (d.getAttribute('aria-label') || '').trim();
return (d.getAttribute('role') || '-') + '/' + (d.getAttribute('aria-modal') || '-') + '/' + nm.slice(0, 34) + '/' + (d.contains(document.activeElement) ? 'focus' : 'nofocus');
})(),
navTabs: [].map.call(document.querySelectorAll('.nav button'), function (b) { return aname(b) + (b.getAttribute('aria-selected') === 'true' ? '*' : ''); }).join('|'),
announce: ((document.querySelector('[data-live]') || {}).textContent || '').trim(),