← All stories

BRANCH · ef-084-concierge

Concierge

EF-084Persona: Attendee + organizerRoots in: efx-station-shellMatrix: Absent - gap probe

Concierge is absent. This story defines the contract for scan-triggered content delivery: text, image, and video content model; attendee display surface; and per-content analytics.

Contract

  1. Organizer configures concierge content.

    Each content item has audience rules, text/image/video payloads, display duration, and analytics label.

  2. Attendee scans at station.

    The station resolves attendee context and delivers the matching content card.

  3. Analytics are recorded.

    Each display and action writes per-content analytics without leaking across stations.

Failure modes

Socket reconnect resilience

Reconnect restores active content and analytics state.

Out-of-order messages

Stale content deltas cannot overwrite current display.

Concurrent scans

High attendee scan load does not drop analytics.

Late join shows prior state

Display joining late sees current content schedule.

Organizer pause/cancel

Pause stops new content delivery and keeps analytics.

Results visible only after close

Analytics report is hidden until the station closes.

Idempotent scan

Duplicate scan does not double-count display analytics.

Cross-station isolation

Content from one concierge station cannot display at another.

Unsupported media fallback

Video/image failure falls back to text and logs analytics outcome.

Gap probe: concierge absent

Visible gap panel remains until the module ships.

Stable test attributes

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

data-testWherePurpose
concierge-stationstation shellconcierge station
concierge-socket-statusstation shellsocket state
concierge-content-editororganizer surfacecontent editor
concierge-scan-ctastation shellscan trigger
concierge-display-surfaceattendee displaydelivered content
concierge-analytics-tableorganizer surfaceper-content analytics
concierge-gap-panelgap panelabsent module gap

Agent test plan

- concierge-gap-visible
- socket-reconnect
- out-of-order-content
- load-stable
- late-join
- organizer-pause
- analytics-after-close
- idempotent-scan
- cross-station-isolation
- media-fallback