Open source · Accessibility

Live Region Event Auditor

Audit live-region announcements for duplicates, missing updates and urgency.

v0.1.0 · Node.js 22+ · MIT

Browse the public repository · View releases

From that it reports four things: a region written twice with the same text inside the repeat window, a region whose resolved urgency is not the expected one, an update the expectations wanted that the recording does not hold, and a region that was inserted into the document already carrying its message.

This walkthrough uses the tool's public README and checked-in example files. Run the command from a repository checkout with Node.js 22+.

Run the checked-in example

# a journey whose live regions behave
node bin/live-region-event-auditor.mjs \
  --journey examples/clean/journey.json \
  --expectations examples/clean/expectations.json \
  --now 2026-09-18
echo $?   # 0

# the same journey with a repeated basket message, an error region built as a
# status region, a confirmation that never arrives, and a progress region
# created with its text already in it
node bin/live-region-event-auditor.mjs \
  --journey examples/broken/journey.json \
  --expectations examples/broken/expectations.json \
  --now 2026-09-18
echo $?   # 1

Read the result

npm run example runs the first of those and npm run example:broken the second. --now is passed so the verdict does not depend on the day it is run; see The clock.

Scope

maxUpdatesPerStep is a required expectation rather than a limit with a default, because it is a statement about the interface as much as about the size of the document. A step that exceeds it is not checked at all and the run is incomplete.