Change registration mode and close registration before start #61

Open
opened 2026-11-01 20:12:24 +00:00 by viacheslavshuka · 0 comments

Organizers need to change recruitment rules without discarding accepted participants or misleading pending applicants.

Acceptance criteria

  • An organizer can change automatic/manual approval after publication. Existing confirmations, approvals, rejections, and active offers remain intact.
  • New requests and future vacancy selection follow the new mode.
  • Before switching to automatic approval, the interface explains that existing pending requests will be processed.
  • While registration is open, switching to automatic approval processes existing pending requests without reversing rejections.
  • Preserve existing reservations and waiting-list priority first. Then process pending firm requests in original request order, assigning available places and placing overflow on the waiting list.
  • New waiting entries use transition time. Simultaneous entries retain original request ordering. Pending tentative requests become approved tentative registrations without places.
  • Organizers can close registration before start and reopen it before start. Closed registration accepts no new requests and issues no new vacancy offers.
  • Early closure preserves confirmations and issued offers until their existing deadlines. Testers can withdraw, and organizers can decide existing requests before start.
  • The interface distinguishes Registration closed from Full. Reopening applies current capacity and queue rules.
  • Registration cannot reopen at or after start. Early closure never cancels the test or changes an existing request into rejection.

Validation

Switch modes with a mixture of pending firm, tentative, rejected, confirmed, reserved, and waiting records. Assert ordering and occupancy independently. Race a new signup against mode change and closure. Verify a stale approval or reopen action cannot cross the scheduled-start cutoff.

Dependencies

Organizers need to change recruitment rules without discarding accepted participants or misleading pending applicants. ## Acceptance criteria - An organizer can change automatic/manual approval after publication. Existing confirmations, approvals, rejections, and active offers remain intact. - New requests and future vacancy selection follow the new mode. - Before switching to automatic approval, the interface explains that existing pending requests will be processed. - While registration is open, switching to automatic approval processes existing pending requests without reversing rejections. - Preserve existing reservations and waiting-list priority first. Then process pending firm requests in original request order, assigning available places and placing overflow on the waiting list. - New waiting entries use transition time. Simultaneous entries retain original request ordering. Pending tentative requests become approved tentative registrations without places. - Organizers can close registration before start and reopen it before start. Closed registration accepts no new requests and issues no new vacancy offers. - Early closure preserves confirmations and issued offers until their existing deadlines. Testers can withdraw, and organizers can decide existing requests before start. - The interface distinguishes Registration closed from Full. Reopening applies current capacity and queue rules. - Registration cannot reopen at or after start. Early closure never cancels the test or changes an existing request into rejection. ## Validation Switch modes with a mixture of pending firm, tentative, rejected, confirmed, reserved, and waiting records. Assert ordering and occupancy independently. Race a new signup against mode change and closure. Verify a stale approval or reopen action cannot cross the scheduled-start cutoff. ## Dependencies - [#52: Register individual testers with approval, tentative status, and capacity checks](https://code.viacheslavshuka.com/viacheslavshuka/quorum/issues/52). Provides registration and approval states. - [#58: Offer available places to waiting testers with explicit acceptance](https://code.viacheslavshuka.com/viacheslavshuka/quorum/issues/58). Provides queue order and reservations that mode changes must preserve. ## Related work - [#62: Close registration at start and complete ended tests automatically](https://code.viacheslavshuka.com/viacheslavshuka/quorum/issues/62) - [#57: Preserve bookings and prevent stale overwrites when test details change](https://code.viacheslavshuka.com/viacheslavshuka/quorum/issues/57)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
viacheslavshuka/quorum#61
No description provided.