P9-03 accessibility and localisation
PARTIAL. Automated findings and finite keyboard/DOM observations do not establish human accessibility acceptance.
The final ordinary suite collected 102 actual browser-zoom observations across 13 named areas at 100/200/400%, using chrome.tabs.setZoom with asserted zoom/DPR: EN/light, NB/dark. All recorded root/main horizontal overflow values are zero. Sixteen recorded states still contain controls outside the horizontal viewport before interaction: Jobs pagination, job/document section tabs, CV tabs and a Settings input. The collector's intentional-scroller flag covers only tables/documents/Board cards, so these flags alone establish neither clipping nor keyboard reachability. They remain explicit M09-06 targets; passing this collection test is not human reflow acceptance.
The inherited 64 incomplete axe occurrences are deduplicated in triage: one aria-hidden drawer-focus occurrence, 48 native size-control background-overlap occurrences, five other obscured-background occurrences and ten invisible zero-badge occurrences. They are not 64 confirmed violations. Hidden zero badges are not applicable in the tested zero-area, aria-hidden state. The inherited Analytics drawer occurrence remains qualified: fresh shared-drawer settled Dashboard tests do not establish the exact original cause or actual reader behaviour. The53 background-contrast cases require contextual painted-colour inspection. New open-modal background incompletes are separately observed tool/state limits; do not conflate them with the inherited drawer node. Keep original occurrences and stable group IDs.
The settled diagnostic suite explicitly inspects zero badges, keyboard-opened drawer focus, Escape return, closed drawer/descendant visibility and 24 Tab presses, plus Dashboard editor controls. Exact final scans and incompletes are in settled-axe.json when accepted; failed transition observations remain retained in raw traces. No NVDA, VoiceOver, human reader, physical device, forced-colour or actual browser-zoom acceptance is claimed. Human checklist gives exact steps, owners and closure records.
Final phase9-cta evidence is 16 scans with 0 violations and 120 incomplete-node occurrences: 100 bgOverlap (contextual colour inspection required), 16 shortTextContent (the verified invisible zero badge; not applicable in that state) and four focusable-modal-open (background root during the active modal; actual reader/modal behaviour remains M09-01/02/05). These are repeated occurrences, not 120 unique defects. Earlier failed NB observations sampled 15 visible descendants after root hiding but before Slide exit; the successor polls the complete unchanged settled predicate and verifies 24 Tab presses, with no retries/skips or product drawer change.
The dictionary comparison found 2,871 English and 2,871 Bokmål keys, no missing/extra keys and no placeholder mismatch. The 49 identical values are candidates reviewed as technical/proper/established terms, not automatic untranslated-copy defects. Dictionary parity alone does not certify grammar, dates, pluralisation or every rendered state.
P9-L01 fixes the AdminUsers vendor pagination controls by passing the installed MUI nbNO locale; English remains the default. Two parameterized Jest regressions and a visible native desktop pagination assertion cover the actual shared owner. The rendered route scan separately lists candidate exact-English strings; persisted Created event types in job/audit metadata remain a Low linguistic residual, not a missing dictionary key. Authored text and provider labels must not be indiscriminately translated. Natural professional Bokmål still needs M09-08 human review.
P9-V01 repairs wrapped public-page h2 spacing at the existing four owners; the original headings inherited a fixed body line height despite larger fonts. Native geometry assertions cover English/Bokmål, both themes and four widths without changing typography tokens or the rendering architecture.