Skip to main content

Catalogue des erreurs

Erreurs des Server Actions​

Les Server Actions retournent des erreurs sous la forme { success: false; error: string }. Il n'y a pas de code d'erreur numérique — le message est suffisant pour le diagnostic.

Erreurs d'authentification​

MessageCauseAction
"Non authentifié"Pas de session JWT valideRediriger vers /login

Erreurs d'ownership​

MessageCause
"Compte introuvable"accountId inexistant ou appartenant à un autre user
"Institution introuvable"institutionId inexistant ou appartenant à un autre user
"Plan introuvable"budgetPlanId inexistant ou appartenant à un autre user
"Source introuvable"BudgetIncomeSource inexistante ou appartenant à un autre user
"Allocation introuvable"BudgetAllocation inexistante ou appartenant à un autre user
"Transaction introuvable"Transaction inexistante ou compte appartenant à un autre user

Ces messages sont intentionnellement génériques — ils ne révèlent pas si la ressource existe chez un autre utilisateur.

Erreurs de validation​

MessageContexte
"Le nom est requis"updateProfile() — name vide ou whitespace
"Le nouveau mot de passe doit faire au moins 8 caractères"updatePassword()
"Les mots de passe ne correspondent pas"updatePassword() — confirm !== new
"Mot de passe actuel incorrect"updatePassword() — bcrypt mismatch
"Compte sans mot de passe"updatePassword() — compte sans passwordHash

Erreurs d'import CSV​

MessageCause
"Aucun fichier fourni"FormData sans champ file
"Format CSV non reconnu"format ne correspond à aucun parser connu

Erreurs génériques​

MessageCause
"Erreur lors de la sauvegarde"Exception Prisma lors d'un upsert budget
"Erreur inconnue"Exception non typée dans processImportCSV

Erreurs HTTP NextAuth​

Ces erreurs apparaissent dans l'URL /login?error=<code> après un échec d'authentification.

CodeSignification
CredentialsSigninEmail inconnu ou mot de passe incorrect
SessionRequiredRoute protégée accédée sans session

Erreurs Prisma​

Les violations de contraintes unique retournent un PrismaClientKnownRequestError avec le code P2002. Elles ne sont pas directement exposées à l'utilisateur — elles sont catchées et retransformées en message lisible par les Server Actions.

Exemple : créer deux fois la même institution (@@unique([userId, name])) sera catchée et retournée comme "Erreur lors de la sauvegarde".


Voir aussi​