← All stories

BRANCH · ef-079-fast-pass-scheduling

Fast Pass / Scheduling

EF-079Persona: AttendeeRoots in: efx-station-shellMatrix: Partial

An attendee taps an NFC station and receives a timed-return assignment with per-slot capacity and SMS notification. SMS delivery depends on EF-071 and is called out as a gap.

Happy path

  1. Attendee taps the station.

    Station resolves the attendee and asks the server for the next available timed-return slot.

  2. Server assigns a slot.

    The slot respects capacity and idempotently returns the same slot for repeated taps inside the assignment window.

  3. Attendee receives return instructions.

    Station displays the time and queues SMS notification when EF-071 exists.

Failure modes

Socket reconnect resilience

Reconnect restores the current slot assignment.

Out-of-order messages

Older slot deltas cannot overwrite newer assignments.

Concurrent slot allocation

Burst taps do not oversell a slot.

Late join shows prior state

A re-opened station shows already assigned slots and remaining capacity.

Organizer pause or cancel

Pause freezes assignment; cancel releases no-show queue deterministically.

Results visible only after close

Final slot roster is hidden until assignment closes.

Idempotent assignment

Repeated taps return the same current slot.

Cross-station isolation

Slots for one station do not bleed into another station.

Slot capacity edge

Last available slot is assigned once under race.

SMS dependency gap

EF-071 absence is visible and does not block on-screen assignment.

Stable test attributes

Visibility teeth. Each attribute must be effectively visible when active and must match the agent probes.

data-testWherePurpose
fast-pass-stationstation shelltimed return station
fast-pass-socket-statusstation shellsocket state
fast-pass-nfc-tap-targetstation shellNFC tap target
fast-pass-assignment-cardstation shellassigned slot display
fast-pass-slot-tableorganizer panelslot capacity table
fast-pass-pause-ctaorganizer panelpause assignment
fast-pass-sms-gap-panelgap panelSMS dependency gap

Agent test plan

- fast-pass-opens
- fast-pass-assigns-slot
- socket-reconnect
- out-of-order-slot
- load-stable
- late-join
- organizer-pause
- roster-after-close
- idempotent-assignment
- cross-station-isolation
- slot-capacity-race
- sms-gap