SPEC: Correction de l'erreur Dev Server Vite Dep Optimizer (@sanity/client)
1. Context & Problem Analysis
Section titled â1. Context & Problem Analysisâ- Erreur constatĂ©e :
[ERROR] [vite] Internal server error: The file does not exist at "/home/anderson/PP/apps/web/node_modules/.vite/deps_ssr/@sanity_client.js?v=e3864250" which is in the optimize deps directory. - Cause :
Lors de lâexĂ©cution de
pnpm build(qui lanceastro build), Vite rĂ©gĂ©nĂšre ou nettoie le dossier de cache dâoptimisation des dĂ©pendances SSR (.vite/deps_ssr). Comme le serveur devastro devtournait en parallĂšle, son cache Vite est devenu obsolĂšte/invalidĂ©. - Solution recommandĂ©e par Vite & Astro :
- Ajouter
@sanity/clientet@sanity/astroĂoptimizeDeps.excludedans la configuration Vite deapps/web/astro.config.mjsafin que Vite ne prĂ©-bundle pas inutilement ces packages ESM cĂŽtĂ© SSR. - Purger le cache
.vite(rm -rf apps/web/node_modules/.vite). - Redémarrer le serveur de développement.
- Ajouter
2. Specification of Changes
Section titled â2. Specification of ChangesâA. Configuration (apps/web/astro.config.mjs)
Section titled âA. Configuration (apps/web/astro.config.mjs)â- Ajouter la section
optimizeDepsdansviteconfiguration :
vite: { optimizeDeps: { exclude: ['@sanity/client', '@sanity/astro'], }, // ...}B. Procédure de nettoyage et relance
Section titled âB. ProcĂ©dure de nettoyage et relanceâ- Supprimer le dossier
.vitedansapps/web/node_modules/.vite. - Tuer le processus
task devexistant et relancertask dev.
3. Test & Validation Protocol
Section titled â3. Test & Validation Protocolâ- VĂ©rifier la compilation et le typage :
npx pnpm@12.3.4 typecheck. - Tester le serveur dev (
http://localhost:4321/) via curl et vĂ©rifier lâabsence dâerreurs 500 Vite. - VĂ©rifier le build de production :
npx pnpm@12.3.4 --filter ./apps/web build.