[Majeur] Events : expireAt et date non validés (absents, passés, expiration avant la date) #107
Labels
No labels
bug
enhancement
feature
groupe/chat-data
groupe/friends-blocking
groupe/input-validation
groupe/realtime-presence
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Transcendence/backend#107
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?
Gravité : Majeur
Rapports QA d'origine : EVENTS-02, EVENTS-04
L'API accepte ces valeurs ; l'event est ensuite supprimé silencieusement par le CleanUp.
Détails des rapports
[EVENTS-02] expireAt absent / antérieur à la date / déjà passé accepté -> l'event sera supprimé par CleanUp — Gravité : Majeur
POST /api/eventsexpireAt-> 201,GETrenvoieexpireAt: "0001-01-01T00:00:00". 2. POST avecexpireAt<date, ouexpireAten 2020 -> 201.CleanUp(BackgroundService, tick toutes les heures) supprimeExpireAt < now-> disparition silencieuse de l'event (et de ses inscriptions) dans l'heure.backend/API/Events/Create/CreateEventEndpoint.cs:18(ExpireAtsans[Required]/validation),CleanUp/CleanUp.cs:58.[EVENTS-04] Date absente / passée / extrême acceptée par l'API — Gravité : Mineur
POST /api/eventsdateomise -> 201 avec0001-01-01(le[Required]sur unDateTimenon nullable ne valide rien) ;dateen 2020,0001-01-01,9999-12-31-> 201. Aucune validation "date >= maintenant". L'UI n'a qu'un attributminsur le champ (contournable).CreateEventEndpoint.cs:16-17.Trouvé par une campagne de tests QA automatisés (agents Claude, Playwright) sur l'environnement de dev. Les captures citées sont locales et non jointes.