[Mineur] Traductions : textes en dur en anglais et pages publiques jamais traduites #160
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#160
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 : FRIENDS-09, PROFILE-14, PROFILE-13, AUTH-21, AUTH-24
Page Messages/amis sans
useTranslation, tooltips, calendrier, invitations, erreurs d'auth ; cléevents.liveNowabsente entc; « Messages privée » en FR ; /login, /privacy, /terms et 404 toujours en anglais. Voir aussi #146.Détails des rapports
[FRIENDS-09] Toute la page Messages privés / amis n'est pas traduite (EN en dur) et "Messages privée" est une faute en FR — Gravité : Cosmétique
/messages/*, widget "Friends" de l'accueil, modales AddFriend/Rename/NewConversation, stats d'accueil partiellement traduites.PATCH /api/me/languagebody0), se connecter enfr-FR. 2. Ouvrir/messages/all.screens/friends_22_fr_messages.png,friends_23_fr_home.png.frontend/src/friends/components/*.tsxn'appelleuseTranslation(0 occurrence) ; clésidebar.messagesdansfrontend/src/translation/fr/translation.js:521.[PROFILE-14] Textes non traduits (anglais en dur) dans les interfaces FR et ZH — Gravité : Cosmétique
friends/components/FriendsWidgets.tsx:109,141)friends/components/*)Sidebar.tsx:252), "Add friend" / "Remove friend" / "Friend request sent" / "Message" (MembersSidebar.tsx:97-102,ProfileUser.tsx), "Open Tanstack query devtools" (bouton devtools visible dans l'UI)events.liveNowabsente detranslation/tc/translation.js, présente en/fr)toLocale…sans locale i18n).screens/profile_tour_fr_home.png,profile_tour_tc_home.png,profile_tour_fr_messages.png.events.liveNowmanque en tc), aucune clét("…")absente des fichiers ; aucun texte brutauth.xxxaffiché dans les parcours.[PROFILE-13] Pages /privacy, /terms, 404 (et /login, /register après rechargement) toujours en anglais, même si la langue du profil est FR/ZH — Gravité : Mineur
/privacy,/terms,/doesnotexist(accès direct ou refresh), vérifié avec un user en langue FR puis ZHhttp://localhost:5173/privacy(ou /terms, /xyz).dashboard.tsx;i18n.init({lng:"en"})ailleurs. Sur les pages du dashboard, un flash d'anglais précède la bascule au rechargement.screens/profile_tour_fr_privacy.png,profile_tour_tc_privacy.png,profile_tour_fr_notfound.pngfrontend/src/translation/i18n.ts:21(lng: "en", pas de détecteur ni de langue persistée en localStorage) ;routes/dashboard.tsx:56-60. Aucune détection de langue du navigateur au premier login (testé avec locale fr-FR : interface en anglais,user.language= English par défaut).[AUTH-21] Les erreurs d'inscription/login ne sont pas traduites et le login masque toute erreur serveur derrière "Invalid login or password." — Gravité : Cosmétique
/register,/logindetailbrut du backend en anglais ("You need a valid invitation with enough remaining uses to register.", "'x' is already used by an other user.") alors que la cléauth.invalidInvitationexiste dans les traductions mais n'est jamais utilisée. Au login,login.tsx:15-16affiche "Invalid login or password." pour TOUT échec (y compris un 500 comme AUTH-01 ou une coupure réseau). Les pages publiques sont toujours en anglais (i18n.tslng: "en", pas de détection de la langue du navigateur : testé aveclocale=fr-FR, page restée en anglais).frontend/src/auth/api/auth.ts:55,74,frontend/src/auth/routes/login.tsx:15-16.[AUTH-24] Textes de la liste d'invitations non traduits ("Never", "Infinite") et description du modal inexacte — Gravité : Cosmétique
/admin/users, modal "Create An Invitation"InvitationList.tsx:34-41) ; le sous-titre du modal promet "The link will be automatically deleted if it expires or reaches all of its usages", or une invitation consommée reste listée avec0(AUTH-08). Le champdatetime-localcoupe "PM" ("08:34 PI") à 1400 px de large (screenshotauth_22_invite_created.png).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.