Also match TS's unresolved intrinsic for error-any detection (#107 follow-up) - #134
Merged
Conversation
…follow-up) Belt-and-braces from the #132 review: TypeScript has a second any-flavored intrinsic (`unresolvedType`, intrinsicName 'unresolved') used by some unresolvable-reference paths. No author-written `any` carries either intrinsic, so no false-positive risk; all goldens and baselines unchanged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Benchmark: ✅ PASS
|
commit: |
Tara-ag
approved these changes
Jul 10, 2026
Tara-ag
left a comment
There was a problem hiding this comment.
Reviewed PR #134.
Files reviewed: 2 (src/extract.mjs, docs/TYPE_MAPPING.md)
New issues raised: 0
Analysis:
- The change extends the existing #107 ERROR-
anydetection to also match TypeScript'sunresolvedintrinsic (intrinsicName === 'unresolved'), alongside the existingerrorintrinsic. - This prevents an unresolvable reference path from being silently salvaged as a component-generic
'aand instead keeps the 🛑-flaggedstringplaceholder, consistent with the "flag, don't fake" rule and the'a-only-for-genuine-generics contract indocs/TYPE_MAPPING.md. - The condition is deterministic (string equality), introduces no unsafe casts, and does not affect author-written
any(which carriesintrinsicName === 'any'). - The
error-any-unresolvedfixture anddocs/TYPE_MAPPING.mdrow are updated together, satisfying the maintenance-loop requirement.
Decision: Approve. No blocking criteria are met.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Follow-up from the #132 review (finding 2).
TypeScript has a second any-flavored intrinsic —
unresolvedType(intrinsicName === 'unresolved') — used by some unresolvable-reference paths. The #107 detection now matches botherrorandunresolved, so a sibling path reaching classify gets the same 🛑-flagged placeholder instead of the silent'asalvage.No author-written
anycarries either intrinsic, so there is no false-positive risk: all 90 goldens and all 9 benchmark baselines are byte-identical. Theerror-any-unresolvedfixture remains the executable contract;docs/TYPE_MAPPING.md's ERROR-anyrow now names both intrinsics.For the other #132 review findings: the report.mjs escaping (finding 1) was already fixed in #132 itself (
mdCell, CodeQL green pre-merge); the report-bucket blindness reminder (finding 3) is now tracked as #133.🤖 Generated with Claude Code