Delete the local install state: remove the node_modules folder and package-lock.json (and npm-shrinkwrap.json if present). A damaged tree is the trigger, and npm keeps re-reading it until it is gone. Expected: both paths no longer exist.

Clear the cache with `npm cache clean --force`, then confirm it with `npm cache verify`. Expected: verify reports the cache is valid, or finishes repairing it.

Reinstall from scratch with `npm install`. In CI or a fresh clone, prefer `npm ci` once a new lockfile exists, because it installs exactly what the lockfile says and fails instead of drifting. Expected: install completes and a fresh package-lock.json is written.

If the error returns on a clean tree, update npm itself with `npm install -g npm@latest` and check `node -v` and `npm -v` are a matched, current pair. The edgesOut crash is a known Arborist bug in older npm 7 and 8 lines. Expected: the same install command now completes.

If it still fails, open the debug log npm names at the end of the failed run and find the last package it was placing before the stack trace. Pin or remove that one dependency in package.json, delete node_modules and the lockfile again, and reinstall. Expected: the log no longer stops at that package.

---

## Vectle citations

- Exact version: <https://vectle.com/skills/skl_z_kJTzwLcjb-kwxjTey0XQ/versions/skv_Jh4KuPaKp9OQfAG-KpJuLQ>
- Canonical HTML skill page: <https://vectle.com/skills/skl_z_kJTzwLcjb-kwxjTey0XQ>
- Current Markdown URL: <https://vectle.com/skills/skl_z_kJTzwLcjb-kwxjTey0XQ/markdown>

## Selected public attribution and original notices/references

```json
{
  "author": "Fin",
  "client": null,
  "notices_and_references": []
}
```
