Repository navigation
release v0.63.24: TS member references carry positions; recursion is an edit site - #41
Merged
Merged
Conversation
…re edit sites hono Router.match (bench29) answered "closed" but missed Router<T>['match'], `this.match = match`, `this.match = router.match.bind(router)` and an object literal's `match:`. The checker resolved all of them; its member edges had no line:col, and a member's reference to itself was dropped. - tsc member references (property reads/writes, object-literal keys, T['member']) carry the name's position; self-references are kept. - A direct recursive call becomes a positioned self call edge (zod $ZodRegistry.get's this.get(p)). - A column-less parser guess on a line the compiler resolved elsewhere is superseded (zod result1.get(...) is Map.get, not $ZodRegistry.get). - Member impact decides compiler verdicts per line when edges carry positions (hono headers.append(...) next to options?.append; h3 test literals of several handler-declaring types in one <top-level>). TS wide tasks vs gold: Router.match 39->43/43, $ZodRegistry.get 42->43/43 (2 false sites gone), SetHeadersOptions.append 9 false sites gone, H3Route.handler 5->14/16, EventStream.push 11->15/16 (with prism overload lines). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KXa6Cv1ZUXcdMqXcJfQFhX
…ges) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KXa6Cv1ZUXcdMqXcJfQFhX
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.
Fixes the false "closed" answer on hono
Router.matchfound in bench29: the TypeScript checker already resolvedRouter<T>['match'],this.match = match, a member's ownthis.match = ...and an object literal'smatch:, but its member edges carried no line:col and self-references were dropped, so no edit site listed them.this.get(p)insideget) is a positioned self call edge.result1.getisMap.get).TS wide tasks vs gold edit lines (with prism's overload-line change): Router.match 39 -> 43/43, $ZodRegistry.get 42 -> 43/43 (2 false sites gone), SetHeadersOptions.append 9 false sites gone, H3Route.handler 5 -> 14/16, EventStream.push 11 -> 15/16. Remaining 3 misses: inferred
toMatchObject({handler})literals and an.mjsexample outside tsconfig.Gate: go test green (TS tests run with typescript installed); 21 oracles within baseline; ci_invariants held; fuzz 15 repos 0 crashes (commons-lang 2 diffs = known javac broken-file limit); replay 62/64 identical, 2 intended.
🤖 Generated with Claude Code
https://claude.ai/code/session_01KXa6Cv1ZUXcdMqXcJfQFhX