From 228c678789217ebe5eb8ba5e48f9430b8b429853 Mon Sep 17 00:00:00 2001 From: Nicolas Fryder Date: Wed, 19 Aug 2026 16:45:04 +0200 Subject: [PATCH] fix(lint): course entre ESLint et les fichiers temporaires de Vitest MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `npm run check` échouait par intermittence sur : Error: ENOENT: no such file or directory, open 'vitest.config.js.timestamp-1787150578770-50269fd6fd11e.mjs' Vitest écrit une version transpilée de sa config à côté d'elle au démarrage, puis la supprime aussitôt. Depuis que les vérifications tournent en parallèle, ESLint apercevait ce fichier pendant son balayage et il avait disparu au moment de le lire. Course non déterministe : elle ne se déclenchait que si les deux tâches se croisaient au mauvais instant, d'où un gate qui échoue sans raison apparente un push sur trois — le pire mode de défaillance pour une porte de qualité, puisqu'il pousse à utiliser --no-verify par réflexe. Motif ajouté aux ignores. Trois exécutions consécutives vertes. --- eslint.config.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/eslint.config.js b/eslint.config.js index 7b7d1f8..55a2a42 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -17,6 +17,13 @@ export default [ "reports/**", ".stryker-tmp/**", "coverage/**", + // Vitest écrit une version transpilée de sa config à côté d'elle + // (vitest.config.js.timestamp-XXXX.mjs) puis la supprime aussitôt. + // ESLint et Vitest tournant en parallèle dans `npm run check`, ESLint + // apercevait ce fichier au balayage et échouait en ENOENT au moment de + // le lire. Course non déterministe : elle ne se déclenchait que si les + // deux tâches se croisaient au mauvais moment. + "**/*.timestamp-*.mjs", ], },