Repository navigation
Conversation
code-review-graph reviewOverall risk: 0.65 (MEDIUM) — 13 changed function(s)/class(es), 2 affected flow(s), 3 test gap(s) Risk-scored changes
Affected execution flows
Test gaps
Token savings: this graph-backed report used ~47,636 fewer tokens (~80%) than reading every changed file in full (estimated, chars/4 approximation). Powered by code-review-graph — local-first analysis; no code leaves the CI runner. |
|
Integrated on |
The #952 port made any per-file parse error veto the freshness metadata and only recorded the Git anchor on "authoritative" updates. Verified consequences on the branch, all absent on main: - a full build with one unparseable file stored no anchor, so every later update became a full rebuild; - an incremental update with one failing file never advanced, so every later update re-diffed the same range and reported status=error; - watch batches never recorded HEAD, so every query after a commit carried the stale-graph caveat and asked the agent to run update. Record the anchor whenever files were stored or the authoritative no-op sync confirmed HEAD (the #952 improvement), report failed files in the build result (status "partial", named in the summary) and on the CLI's stderr, and keep postprocessing for the files that did parse. Explicit batches that store nothing still keep the old anchor. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016yGn8rDJSeJCRcRf4cmciH
Strict change discovery raises when the Git diff against the stored anchor fails. The CLI caught that, but the MCP build tool let it escape as a bare exception instead of the status/summary shape every other failure uses. Catch it in the build tool and have the CLI treat an error status the way it treated the exception: message on stderr, exit code 1. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016yGn8rDJSeJCRcRf4cmciH
|
Merged into |
…updates Port the reviewed token-efficiency implementation with targeted regression coverage. Source-PR: tirth8205#952
Summary
Fixes a freshness inconsistency where successful incremental updates with zero structural graph changes could leave the stored Git SHA at the previous commit.
This created a contradiction where the update path reported the graph as up to date while
get_minimal_context()still returnedstale_graph.What changed
changed_files, watch batches, and non-authoritative bases conservative."Graph is up to date"for incomplete incremental updates.Validation
140 passedfor incremental + Git integration tests2,990 passed, 9 skipped, 2 xpassed85.02%git diff --check: passed