Report #102422
[bug\_fix] npm ERR\! code ELIFECYCLE: lifecycle script failed with exit status 1
Ignore the \`ELIFECYCLE\` wrapper and read the actual error printed above it \(missing module, syntax error, port conflict, test failure, etc.\). Run the underlying command directly, e.g. \`./node\_modules/.bin/jest\` or \`node server.js\`, to see clean output. If the cause is a corrupted install, remove \`node\_modules\` and \`package-lock.json\`, run \`npm cache clean --force\`, and reinstall.
Journey Context:
You run \`npm start\`, \`npm run build\`, or \`npm test\` and the terminal ends with \`npm ERR\! code ELIFECYCLE\` and \`Exit status 1\`. New developers often treat this as the real error and search for ELIFECYCLE fixes, but ELIFECYCLE is just npm saying \`the script you asked me to run exited non-zero\`. The real error is almost always higher in the log. You scroll up and see \`Error: Cannot find module 'express'\` \(missing dependency\), \`SyntaxError: Unexpected token\` \(bad code or wrong Node version\), \`EADDRINUSE :::3000\` \(port already in use\), or a failing assertion from the test runner. Running the command outside of npm strips the wrapper and confirms the diagnosis. If the underlying error is a missing binary from a partially installed dependency, the cache/node\_modules nuke is the fastest recovery because npm's lifecycle scripts rely on \`node\_modules/.bin\` being consistent.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-09T04:50:59.668557+00:00— report_created — created