feat(vscode): make graph exploration trustworthy and polished#38
Merged
Conversation
forhappy
marked this pull request as ready for review
July 25, 2026 20:19
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.
Context
Historical graph responses could arrive out of order and replace presentation
state for a newer selection. Revision builds also lacked explicit
cancellation/failure recovery, and architecture/call-graph list limits silently
hid loaded results.
The graph inspector also split source evidence and navigation across duplicate
controls, connected-node colors read as heavy selection rails, and the call
graph opened with an unbalanced top-left resolver sentence and no recovery
surface.
Changes
Trust and correctness
comparison, counts, community, build, and operation state.
beside every visible historical graph.
load completion order cannot corrupt drilldown.
transitions; cancel active work when the panel closes; bound user-facing
failures; and route JSONL validation failures through the command promise.
findings.
all actions.
the contract is truncated.
Inspector and loading UX
External Link icon and exact line or byte range in its visible and accessible
labels.
Not recordedwhen no source exists.resolving the function under the editor cursor.
output actions.
requests and disposed panels cannot overwrite fresh state.
Validation
npm run typecheck:jsnpm run test:js— 22 viewer unit tests, 33 extension unit tests, and 27Playwright tests passed, including accessibility and performance coverage
npm run build:viewernpm run build:vscodenpm run test:integration -w editors/vscode— 1 extension-host integrationtest passed
npm run package -w editors/vscodenpm run smoke:vsix -w editors/vscodegit diff --checkScope boundaries
compass-out/.graphify-out/,compass-out/, VSIX, and other local outputdirectories are not committed.