noCV
A11Y-107 · Preserve progress

Handle expiry without an inaccessible countdown trap

Practice briefStoryExpert

A slow form session expires after details are entered. The countdown steals focus every second, and Extend reports success after the server session has ended.

Focused work estimate
3h 30m + prerequisites
Priority in the scenario
High
Engineering practice
Session lifecycle · Accessibility · Race conditions

Estimated field mix

  • Accessibility50%
  • Frontend30%
  • Backend20%

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Your next step

Review it, then add it to your workspace.

The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.

Project context

The fictional Riverside desk books appointments for permit paperwork and library assistance. Its browser flow was assembled from separate forms and dialogs. Work uses synthetic availability and booking adapters; actual appointments and personal records are excluded.

Setup prerequisites

  • Synthetic services, slots, and booking API contract
  • Keyboard and screen-reader access for a documented manual check

Preceding work

Complete these dependencies, or supply their agreed outputs before taking this ticket.

Acceptance criteria

  • Advance warning offers an accessible extension action without announcing each second.
  • Extension success requires server confirmation and preserves the active form location.
  • Expiry or uncertain extension preserves a scoped draft but requires session recovery and fresh slot validation before booking.

Implementation constraints

  • Use a fake clock and session adapter; do not weaken expiry or record contact data in analytics.

Verification to include

  • Extend before expiry by keyboard and verify confirmed continuation with focus restoration.
  • Race expiry and a lost extension response; expired authority cannot book, and recovery revalidates the slot.

Deliverables

  • Session continuity state machine and expiry-race walkthrough

Rollout and recovery

Pilot against short synthetic sessions; disable booking under ambiguous session authority while preserving recoverable drafts.

Value of the work

For the engineer: Practice accessibility as complete interaction behavior, including recovery and asynchronous updates.

For the team: Inspect whether an engineer removes concrete barriers while preserving appointment integrity and supportability.

Evidence boundaries

Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.

Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.