Skip to content

install: remove node_modules entries that left the lockfile - #32974

Open
robobun wants to merge 13 commits into
mainfrom
claude/farm/4f23685c/prune-stale-node-modules
Open

install: remove node_modules entries that left the lockfile#32974
robobun wants to merge 13 commits into
mainfrom
claude/farm/4f23685c/prune-stale-node-modules

only unlink .bin entries whose target is missing

57cedcd
Select commit
Loading
Failed to load commit list.
Claude / Claude Code Review completed Jun 28, 2026 in 15m 58s

Code review found 1 important issue

Found 5 candidates, confirmed 1. See review comments for details.

Details

Severity Count
🔴 Important 1
🟡 Nit 0
🟣 Pre-existing 0
Severity File:Line Issue
🔴 Important src/install/hoisted_install.rs:262-273 Consumer-side bun link symlink deleted by next bun install

Annotations

Check failure on line 273 in src/install/hoisted_install.rs

See this annotation in the file changed.

@claude claude / Claude Code Review

Consumer-side bun link <pkg> symlink deleted by next bun install

🔴 Companion to the global-registry case above: on the **consumer** side, `bun link <pkg>` defaults to `--no-save` (CommandLineArguments.rs:1210-1211 → PackageManagerOptions.rs:695-697), so it creates `node_modules/<pkg>` as a symlink without persisting it to `package.json` or `bun.lock`. On the next plain `bun install`, `<pkg>` is in neither half of `expected_root_entries` and the prune `delete_tree`'s the link — before this PR the link survived because nothing walked `node_modules`. Gating on `