[Majeur] La modale de création ne se ferme pas quand l'API répond vite (useModalFetcher) #150

Closed
opened 2026-10-28 10:32:24 +00:00 by asventi · 0 comments
Owner

Gravité : Majeur
Rapports QA d'origine : CHAT-14

Détails des rapports

[CHAT-14] La modale de création/édition ne se ferme pas quand l'API répond vite (course dans useModalFetcher) — Gravité : Majeur
  • Où : modales Create a category (reproduit 4 fois sur 4), probablement toutes les modales utilisant useModalFetcher (channel, rôles, ...).
  • Étapes : 1. admin, CHANNELS > "+" (Create a category), saisir qa_chat_ui_cat3, cliquer Create. 2. Attendre 5 s.
  • Attendu : modale fermée, catégorie visible. Obtenu : la catégorie est bien créée (POST 201, présente dans la sidebar et l'API) mais la modale reste ouverte indéfiniment avec le bouton Create actif ; un second clic sur Create produirait un 409 (-> CHAT-13, page d'erreur). Avec une latence artificielle de 600 ms sur le POST (Playwright route), la modale se ferme normalement => c'est une course : l'état intermédiaire submitting n'est jamais rendu quand la réponse est rapide, submittedRef.current ne passe jamais à true.
  • Preuve : screens/chat_cat_after_ok.png (modale encore ouverte après création réussie).
  • Cause probable : frontend/src/hooks/useModalFetcher.ts (le useEffect n'arme submittedRef que s'il observe fetcher.state !== "idle").

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.

**Gravité :** Majeur **Rapports QA d'origine :** CHAT-14 ## Détails des rapports <details><summary>[CHAT-14] La modale de création/édition ne se ferme pas quand l'API répond vite (course dans useModalFetcher) — Gravité : Majeur</summary> - Où : modales Create a category (reproduit 4 fois sur 4), probablement toutes les modales utilisant `useModalFetcher` (channel, rôles, ...). - Étapes : 1. admin, CHANNELS > "+" (Create a category), saisir `qa_chat_ui_cat3`, cliquer Create. 2. Attendre 5 s. - Attendu : modale fermée, catégorie visible. Obtenu : la catégorie est bien créée (POST 201, présente dans la sidebar et l'API) mais la modale reste ouverte indéfiniment avec le bouton Create actif ; un second clic sur Create produirait un 409 (-> CHAT-13, page d'erreur). Avec une latence artificielle de 600 ms sur le POST (Playwright route), la modale se ferme normalement => c'est une course : l'état intermédiaire `submitting` n'est jamais rendu quand la réponse est rapide, `submittedRef.current` ne passe jamais à true. - Preuve : `screens/chat_cat_after_ok.png` (modale encore ouverte après création réussie). - Cause probable : `frontend/src/hooks/useModalFetcher.ts` (le `useEffect` n'arme `submittedRef` que s'il observe `fetcher.state !== "idle"`). </details> --- _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._
Equoo self-assigned this 2026-10-28 10:50:29 +00:00
Equoo closed this issue 2026-10-28 11:53:06 +00:00
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.

Dependencies

No dependencies set

Reference
Transcendence/frontend#150
No description provided.