Checkpoint: Les erreurs de création de connecteur sont désormais neutralisées côté API : aucune requête SQL ni aucun paramètre de connexion ne peut être renvoyé au navigateur. Un test dédié le garantit. Le flux public HTTPS de production a été validé pour le même profil utilisateur : création, normalisation https et suppression réussies, sans ligne résiduelle. 74 tests, TypeScript et build validés.

This commit is contained in:
Manus
2026-09-30 13:55:08 +00:00
parent 137c1f0652
commit b294c11a52
4 changed files with 59 additions and 4 deletions

View File

@@ -0,0 +1,25 @@
import { TRPCError } from "@trpc/server";
export const WEB_IMPORT_SOURCE_SAVE_ERROR =
"Impossible d’enregistrer le connecteur. Vérifiez les informations saisies puis réessayez.";
/**
* Masque toute erreur Drizzle/MySQL avant son retour au navigateur : les erreurs
* de pilote peuvent contenir la requête SQL et les paramètres de connexion.
*/
export function getSafeWebImportSourceError(_error: unknown): TRPCError {
return new TRPCError({
code: "INTERNAL_SERVER_ERROR",
message: WEB_IMPORT_SOURCE_SAVE_ERROR,
});
}
/** Journalise uniquement les métadonnées techniques non sensibles. */
export function logWebImportSourceSaveFailure(error: unknown): void {
const technicalCode =
error && typeof error === "object" && "code" in error && typeof error.code === "string"
? error.code
: "unknown";
console.error("[WebImportSources] Échec d’enregistrement", { technicalCode });
}