install: resolve a range onto an existing version only when every install has it - #38832
Open
robobun wants to merge 5 commits into
Open
install: resolve a range onto an existing version only when every install has it#38832robobun wants to merge 5 commits into
robobun wants to merge 5 commits into
Claude / Claude Code Review
completed
Aug 15, 2026 in 44m 37s
Code review found 1 important issue
Found 1 candidates, confirmed 2. See review comments for details.
Details
| Severity | Count |
|---|---|
| 🔴 Important | 1 |
| 🟡 Nit | 1 |
| 🟣 Pre-existing | 0 |
| Severity | File:Line | Issue |
|---|---|---|
| 🟡 Nit | src/install/PackageManager/PackageManagerEnqueue.rs:2132-2134 |
Peer append sets .pinned but peer reuse does not — asymmetric with the !is_peer reuse gate |
Annotations
Check warning on line 2134 in src/install/PackageManager/PackageManagerEnqueue.rs
claude / Claude Code Review
Peer append sets .pinned but peer reuse does not — asymmetric with the !is_peer reuse gate
The reuse path gates `mark_pinned_by_reuse` on `!behavior.is_peer()` (line 2102), but the append path here passes `exact` unconditionally, so a peer row that appends stamps `.pinned` while a peer row that binds to the same version does not — and which of two peer rows appends first follows the manifest-arrival-ordered peer FIFO. This does not affect fresh installs (a peer-appended package is never `is_reusable` in the same pass), but `bun update <name> --latest` calls `wait_for_resolution` twice
Loading