Race Condition in Access Code Generation for Quiz
Les mainteneurs répondent en général sous 1 jour
@chetna123-ch y travaille déjà.
Depuis le 19/10/2026.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 48/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Calme
- Stack technique
- express, postgresql, typescript
Piste de recherche
Start at the endpoint named in the issue, /apps/http-server/routes/api/v1/quizzes/:quizId/generate-access-code, and trace how it generates and stores access codes. Check the database schema and existing tests for uniqueness constraints or collision handling. Done means concurrent requests cannot assign duplicate codes and collisions are handled safely; the payload does not name a test file.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
📍 Location
/apps/http-server/routes/api/v1/quizzes/:quizId/generate-access-code
Problem Description
The current implementation of the access code generation endpoint is vulnerable to a race condition when multiple users request a code simultaneously.
Scenario:
User A and User B send a request at the same time
Both requests execute generateCode()
Both receive the same generated code (e.g., AC123A)
The system assigns duplicate access codes
This leads to non-unique access codes, which breaks the assumption that each quiz session should have a unique join code.
Expected Behavior
- Each generated access code must be globally unique
- Concurrent requests should never result in duplicate codes
- The system should handle collisions gracefully (e.g., retry mechanism)
- Langage dominant
- TypeScript
- Étoiles
- 21
- Forks
- 7
- Merge moyen
- 3 h 39 min
- PR mergées (30 j)
- 16
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de TheCodeHeist-Coder/Rexial
-
documentation good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
TheCodeHeist-Coder/Rexial#195 ·
Les mainteneurs répondent en général sous 1 jour
-
Backend first issue bug help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
TheCodeHeist-Coder/Rexial#193 ·
Les mainteneurs répondent en général sous 1 jour
-
Backend first issue bug good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
TheCodeHeist-Coder/Rexial#192 ·
Les mainteneurs répondent en général sous 1 jour
-
Backend first issue bug good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
TheCodeHeist-Coder/Rexial#191 ·
Les mainteneurs répondent en général sous 1 jour
-
good first issue help wanted UI & UX
Difficulté 2/5 1-3 heures Accessibilité débutants 90/100
TheCodeHeist-Coder/Rexial#190 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de TheCodeHeist-Coder/Rexial
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
farion1231/cc-switch#8829 ·
Les mainteneurs répondent en général sous 1 jour
-
[core-client] Remove unused hand-maintained transport helpers after the definition-table cutoverOuvertedoc-audit enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
-
Snapshot capture failure (EPERM spawning git) fails the whole step despite the best-effort contractOuvertereproduced
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
anomalyco/opencode#58685 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour