Register individual testers with approval, tentative status, and capacity checks #52
Labels
No labels
area/backend
area/frontend
area/tooling
kind
build
kind
chore
kind
ci
kind
docs
kind
feat
kind
perf
kind
test
size
l
size
m
size
s
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
Depends on
#54 Open Quorum on a filtered list of upcoming tests
viacheslavshuka/quorum
#55 Announce matching tests once and combine deferred discoveries into digests
viacheslavshuka/quorum
#56 Manage organizer-supplied access links for tests
viacheslavshuka/quorum
#57 Preserve bookings and prevent stale overwrites when test details change
viacheslavshuka/quorum
#58 Offer available places to waiting testers with explicit acceptance
viacheslavshuka/quorum
#61 Change registration mode and close registration before start
viacheslavshuka/quorum
#62 Close registration at start and complete ended tests automatically
viacheslavshuka/quorum
#63 Send timely session reminders and organizer readiness alerts
viacheslavshuka/quorum
#64 Reconfirm protected places when test commitments change
viacheslavshuka/quorum
#67 Show group familiarity and apply the previous-tester admission setting
viacheslavshuka/quorum
#70 Let testers manage their participation through Telegram buttons
viacheslavshuka/quorum
#22 Keep a durable notification inbox with current action status
viacheslavshuka/quorum
#23 Let users control Telegram delivery, reminders, and digests
viacheslavshuka/quorum
#44 Create private test drafts and publish complete announcements
viacheslavshuka/quorum
#47 Manage test co-organizers through accepted invitations
viacheslavshuka/quorum
Reference
viacheslavshuka/quorum#52
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Testers need one authoritative participation record across the website and bot. Deliver the registration and roster workflow with explicit approval, commitment, and seat states.
Acceptance criteria
Validation
Use domain state transitions for approval versus availability. Race final-seat requests, approval, tentative conversion, capacity reduction, and withdrawal with independent database connections. Assert seat limits and absence of unintended registrations after rejected actions. Check roster response privacy for each viewer role. Exercise the website with two clients and inspect generated API contracts.
Check inbox creation after approval and rejection. Repeat event processing and require one record per event and recipient. Test reminder-off, Telegram-off, and rejection-reason privacy.
Dependencies
Related work