[E07] Event Pre-assignment
Summary
Event-scoped screen where an organiser pre-assigns numbers ahead of an event. Two main paths: auto-assign for unassigned EPs (via RaceNumberPoolService) and bulk carry-over from a previous event for the same person.
Surfaces the cascade-preview UI honouring ADR-0006 (UNFIT-latest EPs forced to manual assignment).
Actor & Context
Actor: event organiser, tenant admin.
Frequency: a few times per event (after registration, before event finalisation).
Precondition: event exists with EPs; tenant has stock; user has EVENT_MANAGER+ permission.
Entry point: Event mode-nav Pre-assignment (or whatever the design pass settles on); link from E01 finalisation readiness panel.
Main Flow
-
Render unassigned EPs filtered by event.
-
Auto-assign action — kicks off allocation for unassigned EPs.
-
Bulk carry-over action — copies assignments from a previous event for the same person.
-
Per-EP review row with manual override link to C04.
-
Cascade preview honouring ADR-0006.
Alternative Flows
-
AF-1: All EPs assigned — page shows
All assignedstate with no actions. -
AF-2: UNFIT-latest EPs cannot auto-resolve — visually distinguished as
awaiting manual assignment — latest was UNFIT; link to C04 for manual selection. -
AF-3: Stock insufficient for auto-assign — surface counts + suggest top-up via tenant inventory.
Acceptance Criteria
-
Use-case page authored.
-
Status
design-todo → handoff-readyafter Claude Design pass. -
Implementation surfaces existing WS2 auto-assign + carry-over endpoints.
-
EPs with UNFIT-latest flagged per ADR-0006.
-
Cascade preview shown before destructive actions.
API Surface
| Call | Purpose |
|---|---|
|
List unassigned EPs. |
|
Auto-assign via RaceNumberPoolService. |
|
Bulk copy from previous event. |
(delegates to C04 for manual reassignment) |
Cross-cutting reassignment dialog. |
Design Anchors
-
design-journal/2026-03/number-tag-management.adoc— WS2: auto-assign on registration -
E01 — finalisation readiness panel links here