Accessibility
What works, and what has not been checked yet.
The keyboard problem, and the rule that holds it
A test that listens for the whole keyboard is a trap waiting to happen: if the page holds the keys, Tab stops working and a keyboard visitor cannot leave. So no test here captures anything until you start it with an explicit gesture, and in normal use the Escape key is never taken. It is the way out, and the page says so before it holds anything: the sentence is part of the Start button's own description, so it is read out with the button's label, and it becomes visible the moment you reach that button with the keyboard. It is also announced once in the status line as the run begins, and not on every press after it, which would bury the count.
On the keyboard test the way out is Escape pressed twice, and the reason is the product itself: Escape is a key you came to test, and a tester whose top-left key quits instead of being tested has a hole exactly where the hand starts. The first press records it like any other key and the second one leaves, within two seconds. The standard allows an exit that is not the obvious one as long as you are told, which is why the sentence is there before anything is held rather than after.
There is one mode where Escape is captured on purpose: the keyboard test can borrow the keys your operating system normally keeps, and Escape is one of them. That mode announces both exits before it starts: a Stop button, and holding Escape for two seconds, which your browser handles even if this page stops responding.
What is built in
Every test page starts with a link that skips past the tool to the written answers. The pages without a tool do not need one and do not have one. Color is never the only signal a test gives: a key that answered is lit and also counted in text, and the findings are written as sentences you can copy. Contrast is calculated rather than eyed, in both light and dark, and the figures live in the stylesheet beside the values.
Motion is minimal and what exists respects a reduced-motion preference. The focus ring never fades in, because a ring that takes 200ms to appear leaves a keyboard visitor with no indicator while it animates.
Where a test cannot help you
A test can need the hardware it is testing. The keyboard test needs a physical keyboard, and on a phone the page keeps every word and swaps only the interactive area for a note saying what to do instead — nothing is hidden and nothing is shortened.
Where a tool counts something a different device produced, it says so rather than folding it into a figure that claims to be about the first one.
The standard, and one limitation that is on purpose
The target is WCAG 2.2, level AA. No level is claimed, for the reason in the next section.
Needing the hardware is a declared limitation of scope, not a defect. The W3C writes the example itself: its guidance on concurrent input mechanisms names a touch-typing application that measures proficiency on a keyboard as "an example of an essential limitation to a particular input mechanism". Operating every tool by keyboard alone would mean not building the ones that measure a pointing device at all. Everything around the instrument is held to the standard.
The keyboard drawing is a diagram, and the second declared limitation. It scales to the width so it never needs sideways scrolling, and that is also why it does not grow when you zoom the page: on a 360px screen a key is 12.3 pixels wide, which is the screen divided by 22.5 keys. So the reading is the written list under it, which names each key as it answers and, once you have walked the board, names the ones that did not. That text scales with zoom like every other word here. If you would rather read the list than the drawing, nothing is lost.
What has not been done
No conformance level is claimed. An automated pass with axe-core found nothing at level A or AA across every page, in both themes, including five states that automation usually never reaches. That result is a floor, not a verdict: a manual pass on the same day found six criteria that no tool reports, because a tool reads state and the failures here are about rate, timing and what gets announced.
No gap is open and named today, which is a smaller statement than it sounds: a pass on real assistive technology, with a real person, has not happened, and no claim here rests on one. Every check behind this page was made with a browser, and a computed accessibility tree is not a screen reader speaking.
If something here blocks you, the contact page reaches a person. A barrier reported is worth more than a statement.