Repository navigation
Conversation
pingdotgg#16211 added the override "undici@^8": "catalog:". pnpm resolves a bare catalog: on a selector to the catalog entry of the package it ends in, without the version range, but the desktop build looked up "undici@^8" and failed with CatalogDependencyResolutionError. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018Td3Q8qgzwVCT3oHEoXreJ
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — This is a focused build-script bug fix that normalizes versioned override selectors and adds regression coverage. Its impact is limited to correcting desktop/CLI artifact dependency resolution, with no product-default, production infrastructure, security, or static-analysis changes. You can add or adjust custom eligibility rules. Learn more. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (2)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 7 remain after this review. 📝 WalkthroughWalkthroughThe catalog resolver now removes a version range from the final selector segment before using it as a bare catalog lookup key. Tests cover ChangesCatalog selector lookup
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix Suggested reviewers: Merge Risk: ⚪ Minimal · up to The PR resolves the current 🚥 Pre-merge checks | ✅ 3 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (3 passed)
Full details: Description checkExplanation The description explains the problem, the fix, and focused verification results. It does not include the required scope and approval information or explain why this focused fix qualifies for the no-prior-approval exemption.
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Problem
node scripts/build-desktop-artifact.tsfails on currentmain:#16211 added the override
"undici@^8": "catalog:". pnpm treats a barecatalog:on an override selector as the catalog entry of the package the selector ends in, without its version range.resolveCatalogDependenciesalready stripsparent>but kept the@^8range, so it looked upundici@^8and failed.Fix
Resolve the selector's final package name without its version range, including the scoped case
@scope/parent>@scope/pkg@^1. The resolver test now coversundici@^8and a scoped versioned selector.Verification
vp test run scripts/lib/resolve-catalog.test.tspasses.node scripts/build-desktop-artifact.ts --platform mac --target dmg --arch arm64now completes. The resulting app installs, launches, and its server starts.Claude Opus 5.5 via Claude Code.
🤖 Generated with Claude Code
https://claude.ai/code/session_018Td3Q8qgzwVCT3oHEoXreJ