Repository navigation
fix(frontend): Réglages plante sur master, export useSuccessFeedback perdu au merge e074589e #854
Description
Problème
Sur master, un utilisateur qui ouvre Réglages voit la page d'erreur « Une erreur est survenue » (code 500 côté interface) au lieu de l'écran. Aucun onglet ne s'affiche : profil, membres, jetons API, sécurité, rien.
La console du navigateur donne la cause :
SyntaxError: The requested module '/src/shared/ds/index.ts' does not provide an export named 'useSuccessFeedback'
Le fichier frontend/src/shared/ds/useSuccessFeedback.ts existe toujours. C'est la ligne qui le réexporte depuis frontend/src/shared/ds/index.ts qui a disparu dans le merge e074589e. ChangePasswordCard.tsx et OrganizationProfileForm.tsx l'importent depuis ../../shared/ds, donc tout écran qui les charge plante au chargement du module.
Effet sur la suite de tests : sur master, npx vitest run affiche 19 tests en échec. Cette ligne en explique 9 :
changePasswordCard.test.tsx(4) ;organizationProfileForm.test.tsx(4) ;deceptive-ui.test.ts› « no module is unreachable » (1), parce queuseSuccessFeedback.tsn'est plus importé par personne.
Les 10 autres (members.test.tsx, 9, et CreateRiskModal.test.tsx, 1) viennent des imports perdus que corrige #845. Les deux correctifs appliqués ensemble font passer les 40 tests de ces cinq fichiers. Vérifié localement le 2026-10-01 ; rien n'a été commité.
Critères d'acceptation
frontend/src/shared/ds/index.tsréexporteuseSuccessFeedback.- Sur une instance locale,
/settingss'affiche sans page d'erreur, onglets Profil, Sécurité et Jetons API compris. changePasswordCard.test.tsx,organizationProfileForm.test.tsxetdeceptive-ui.test.tspassent.npm run type-check(tsc -b --noEmit) ne signale plus les deux erreursTS2305suruseSuccessFeedback. Il en reste deux,DeleteButtonetScrollProgress, que corrige fix(frontend): restore imports lost in merge 269e54fc (#840) #845 ; une fois les deux PR mergées, il n'en reste aucune.
Note : il n'y a pas de garde à ajouter. CI avait vu le défaut : sur e074589e, « CI Status » et « Frontend Lint & Format » sont en échec. Le merge est passé malgré une CI rouge. Attention aussi : npx tsc --noEmit -p . ne vérifie rien dans ce dépôt (tsconfig.json a "files": [] et ne fait que référencer tsconfig.app.json). La vérification réelle est tsc -b.
Definition of Done
Un utilisateur ouvre Réglages sur master et voit l'écran. npx vitest run et npm run type-check ne comptent plus que les échecs que #845 corrige, et zéro une fois #845 mergé.
Activity
alex-dembele commentedon Oct 1, 2026
frontend-react — 2026-10-01
Done — Aucun changement de code. Le défaut est déjà corrigé sur
master: la ligneexport { useSuccessFeedback } from './useSuccessFeedback';est revenue dansfrontend/src/shared/ds/index.ts:81avec le commit8c434dea(#751), entré surmasterpar le merge de #847 (368956ef). #845 est mergé aussi (f486e9fa). La branche854-fixfrontend-…pointe sur368956efsans aucun diff, donc pas de PR à ouvrir.Verified — sur
368956ef:npm run type-check(tsc -b --noEmit) : aucune erreur, niTS2305suruseSuccessFeedback, niDeleteButton/ScrollProgress.npx vitest run:Test Files 100 passed (100),Tests 933 passed (933).npx vitest runsurchangePasswordCard.test.tsx,organizationProfileForm.test.tsxetdeceptive-ui.test.ts:Test Files 3 passed (3),Tests 23 passed (23).:55855), connexionadmin@opendefender.io: les 11 onglets de Réglages s'affichent sans la page « Une erreur est survenue » (Mon profil, Général, Membres, Jetons API, Organisations, Champs personnalisés, Intégrations, Notifications, Sécurité, Facturation, Danger zone).OrganizationProfileFormest rendu dans Général,ChangePasswordCard(« Changer le mot de passe ») dans Sécurité. La console n'a remonté aucune erreur, et laSyntaxErrorsuruseSuccessFeedbacka disparu. Captures locales :.playwright-mcp/854-settings-security.png,.playwright-mcp/854-settings-profile.png.Criteria — 1 ✅ · 2 ✅ · 3 ✅ · 4 ✅ (zéro erreur, #845 étant mergé)
Next — Le propriétaire ferme l'issue comme corrigée par #847. Aucune PR ne la fermera, la branche est vide.
Blocked on — @owner, pour fermer l'issue