Skip to content

The graph differential could only ever check the installed build - #46

Merged
nedonatelli merged 1 commit into
mainfrom
fix/differential-graph-override
Aug 4, 2026
Merged

The graph differential could only ever check the installed build#46
nedonatelli merged 1 commit into
mainfrom
fix/differential-graph-override

Conversation

@nedonatelli

Copy link
Copy Markdown
Owner

graph-differential.mjs read .sidecar/cache/symbol-graph.json and nothing
else. That file is written by whichever extension build is installed, which
lags main.

So running the differential after a fix measured the release you happen to be
running, not the code you just changed — and those diverge exactly when it
matters.

Concretely: after #45 merged, the cache was still version: 4 and would
have reported all 40 generators still missing. The check that exists to find
extractor gaps would have reported a gap that was already fixed.

SIDECAR_GRAPH now overrides the path, so a freshly built graph can be
compared without disturbing the workspace cache.

Result against current main

reference : 6290 nodes / 17929 edges over 953 files
ours      : 5835 symbols over 816 files
by kind   : variable=1083 class=201 method=1487 function=2275
            enum=9 interface=611 type=169

files ours misses : 2 source (gated), 116 test, 1 re-export barrel

OK: 2 unindexed files, at or under the 7 baseline.

Both remaining misses are legitimately symbol-less: sdk/index.ts (type-only
exports) and webview/handlers/messageUtils.ts (pure export * from barrel).
anthropicStreamTranslate.ts and completions/provider.ts have dropped off
the list.

This is the check that found both the 221-constant gap and the generator gap.
It now reports on the code rather than on whatever happens to be installed.

🤖 Generated with Claude Code

`graph-differential.mjs` read `.sidecar/cache/symbol-graph.json` and nothing
else. That file is written by whichever extension build is installed, which
lags `main` — so running the differential after a fix measured the release you
happen to be running, not the code you just changed, and those diverge exactly
when it matters.

Concretely: after the generator fix merged, the cache was still `version: 4`
and would have reported all 40 generators still missing. The check that exists
to find extractor gaps would have reported a gap that was already fixed.

`SIDECAR_GRAPH` now overrides the path, so a freshly built graph can be
compared without disturbing the workspace cache.

Run against current main this way, the differential is clean: 2 unindexed
source files, both legitimately symbol-less (a type-only index and a
re-export barrel), against a baseline of 7.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

✅ All checks passed

Check Status
Type check ✅ success
Lint ✅ success
Tests ✅ success

Posted by SideCarAI-Bot

@nedonatelli
nedonatelli merged commit 5a1d44f into main Aug 4, 2026
3 checks passed
@nedonatelli
nedonatelli deleted the fix/differential-graph-override branch September 1, 2026 15:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant