Files
IdeA/.ideai/memory/frontend-uses-npm-not-pnpm.md
Blomios 8e481aed69 chore(ideai): état d'orchestration du sprint #13 (transport HTTP/WS + surface web)
Versionne l'état runtime IdeA produit pendant le sprint #13 : store de
tickets (dont les nouveaux #55 à #67), compteur et index, notes de mémoire
projet des lots F0 à F5, et journal des tâches de fond.

Séparé du code applicatif conformément à la convention du dépôt
(cf. ad1f225, a244f32) : métadonnée d'orchestration last-writer-wins,
sans impact sur le build.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 10:32:39 +02:00

1.2 KiB

name, description, metadata
name description metadata
frontend-uses-npm-not-pnpm memory note frontend-uses-npm-not-pnpm
type
project

Le dossier frontend/ s'installe et se build avec npm, jamais pnpm (lockfile package-lock.json).

Ne jamais lancer pnpm (ni corepack pnpm build, ni le wrapper pnpm --dir frontend build) dans frontend/ :

  • pnpm --dir frontend build échoue d'abord sur un pré-check pnpm install (ERR_PNPM_IGNORED_BUILDS sur esbuild).
  • Surtout, pnpm install clobber le node_modules npm : pnpm aplatit vite@5.4.21 au top-level alors que vitest@4.1.x exige vite ^6||^7||^8. Résultat : ERR_PACKAGE_PATH_NOT_EXPORTED: './module-runner' dès que vitest spawn son worker pool (>3 fichiers de test). Avec npm, vite@8 est imbriqué sous node_modules/vitest/node_modules/vite, donc tout marche.
  • Réparation si le clobber arrive : rm -f frontend/pnpm-lock.yaml frontend/pnpm-workspace.yaml && cd frontend && npm install, puis git checkout -- frontend/package-lock.json.

Commandes correctes sans le wrapper cassé : cd frontend && npx tsc --noEmit && npx vite build (build) et npx vitest run (tests). Le script pnpm build du package.json ne doit pas être utilisé tel quel dans cet environnement.