Repository navigation
Conversation
Clarify current-directory Node pins and workspace-root package-manager pins. Report the actual manifest and declaration around existing confirmations and results, and distinguish missing manifests from unmatched pins without changing selection or exit status.
|
The documentation did not clearly explain which files package-manager pin and unpin commands modify. This change clarifies that scope in the documentation and command help. The command output also shows the actual file path and field, so users can see where changes occur. |
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. 🚀 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Can it be changed to a relative path based on the cwd? Instead of displaying the absolute path by default. |
|
@codex review |
|
Codex Review: Didn't find any major issues. Delightful! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
From a workspace member such as
/repo/packages/app,vp env pin yarn@4.12.0 --no-install --forceupdates the workspace rootpackage.json. The help describes changes in the current directory, and the result omits the target file. Users can mistake a shared package-manager change for a change limited to that member.Correct the help and guide to explain that Node.js pins use the current directory and package-manager pins use the workspace root. Show the actual manifest and field before existing overwrite prompts and after package-manager results. File paths are relative to the current working directory:
When no matching pin exists, report the searched fields and any explicit manager selector. Distinguish missing files from other read failures.
--targetcontinues to select the pin source within the existing project scope.Evidence
After: The same operations identify the root manifest and actual field. Mixed Node/package-manager snapshots show separate member and root targets. Cancellation shows the target once before the question and preserves the manifest.
Validation of
cd43b861on macOS arm64:just check,just test(2338 passed, 7 ignored), andjust lintpassed..nvmrccases, and 3 mismatch/confirmation cases. Generated snapshots were reviewed.rustfmt --check, andgit diff --checkpassed.The snapshot wrapper stopped at missing Playwright dependencies. The same Rust runner passed directly against the freshly built global binary with local-flavor cases excluded. Linux and Windows were not tested locally. Read-error classification used synthetic I/O errors, without a filesystem-permission integration test.
Merge Danger
Door: two-way
Reverting this change restores the previous messages and documentation without a project-file migration.
Blast Radius: CLI
Human-readable pin/unpin output changes, so scripts that match exact messages need adjustment. Workspace resolution, declaration selection, Node.js behavior, confirmation points,
--force, and exit statuses remain unchanged.