Confirm TypeScript PR #60238 changes are already correctly ported #1131
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR investigates and confirms that TypeScript PR #60238 "Fix prioritization of
paths
specifiers over node_modules package specifiers" has already been correctly ported to the Go codebase.Analysis
The original TypeScript PR #60238 made critical changes to the
computeModuleSpecifiers
function to ensure thatpaths
specifiers fromtsconfig.json
are properly prioritized over node_modules package specifiers:Key Changes:
getLocalModuleSpecifier
call was moved outside theif (!specifier)
block to always executemodulePath.isRedirect
tomodulePath.isRedirect || !!specifier
paths
specifiers are always considered and prioritized over node_modulesVerification
After thorough analysis of the Go implementation in
/internal/modulespecifiers/specifiers.go
, I confirmed that:✅ Line 356-364:
getLocalModuleSpecifier
is called unconditionally (not inside an if block)✅ Line 363:
pathsOnly
parameter correctly usesmodulePath.IsRedirect || len(specifier) > 0
✅ Lines 365-391: All local specifier processing logic runs unconditionally
Testing
Conclusion
The TypeScript PR #60238 changes have already been correctly ported to the Go codebase. The module specifier prioritization logic properly prioritizes
paths
specifiers over node_modules package specifiers as intended.No code changes were required.
Fixes #1127.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.