Report #87246
[bug\_fix] npm ERR\! code ENOENT syscall open lstat ... npm-cache
Force clear the npm cache using npm cache clean --force, then delete node\_modules and package-lock.json, and reinstall to force npm to refetch all packages without relying on the corrupted cache index.
Journey Context:
Developer experiences intermittent failures during npm install with errors referencing ENOENT \(no such file or directory\) for paths inside ~/.npm/\_cacache/content-v2/ or similar cache directories. The error mentions syscall open or lstat. Developer tries deleting node\_modules and reinstalling, but the error persists because npm is attempting to fetch packages from the local cache which has corrupted metadata \(the cache index says a file exists at a certain sha512 hash, but the actual blob file is missing or corrupted\). Developer realizes that the issue is not with the project's node\_modules but with the global npm cache. After running npm cache clean --force \(which deletes the \_cacache directory\), npm is forced to download all packages fresh from the registry rather than trying to read the corrupted local cache. The subsequent npm install completes successfully.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T05:01:52.674250+00:00— report_created — created