[Mineur] Changement de rôle non répercuté en direct (UI de l'utilisateur, sidebar Members) #158
Labels
No labels
bug
enhancement
feature
groupe/admin-ui
groupe/chat-ui
groupe/error-handling
groupe/event-composer
groupe/i18n-forms
groupe/ui-polish
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Transcendence/frontend#158
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é : Mineur
Rapports QA d'origine : ADMIN-16, ADMIN-19
Cache
med'1 h et aucun push.Détails des rapports
[ADMIN-16] Changement de rôle non répercuté en direct dans l'UI de l'utilisateur concerné (cache `me` 1 h, aucun push) — Gravité : Mineur
PATCH /users/{X}/role/{R}3. Observer l'UI de X sans recharger (4 s, puis navigation SPA Calendar/Home) 4.GET /api/mede XGET /api/merenvoie le nouveau rôle immédiatement (et l'API applique les nouvelles permissions tout de suite), mais l'UI reste inchangée (0 lien admin) après 4 s et après navigation SPA ; les liens n'apparaissent qu'après un rechargement complet (goto/reload). Inversement, X rétrogradé reste sur /admin/users avec tous les liens, ses actions échouent en 401 (POST /api/roles-> 401 depuis l'UI périmée).scripts/admin/t6_live.py(admin_links=0avant/après,admin_links=2après reload) ; screenshotsscreens/admin_live_02_R2_noreload.png,admin_live_04_demoted_on_users_page.png.frontend/src/root.tsx:68-72queryClient.query({queryKey:["me"], staleTime: 60*60_000}); aucune invalidation SignalR sur changement de rôle/permission (realtime.ts, hub sans événement de rôle) ; le changement de permissions d'un rôle (cases) n'invalide pas non plusmedes utilisateurs concernés.[ADMIN-19] Sidebar "Members" : le rôle affiché n'est pas mis à jour en temps réel après un changement de rôle — Gravité : Mineur
/channels/<id>(panneau Members ouvert, la cible affichée "Member") 2. dede change le rôle de la cible (PATCH /users/{id}/role/{roleId}) 3. Attendre 4 s sans rechargerscripts/admin/t15_roles_ui2.py(sidebar after role change (no reload, 4s): ... Member,after reload: ... qa_admin_rn_..._b), screenshotscreens/admin_members_sidebar.png.PatchRoleQuery.cs/PatchRolePermQuery.cs/DeleteRoleQuery.cs; cache react-query (10 min,queryClient.ts) côté front.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.