Problem
Greptile's published 82% bug catch rate (vs ~46% industry average) correlates directly with full-repository graph indexing before reviewing any diff. DiffScope already has symbol_graph.rs and symbol_index.rs with cross-file dependency tracking, but this context is not fully leveraged when constructing the review prompt at PR time.
The architecture exists. The wiring is the gap.
Proposed Solution
Enhance the review pipeline to:
- Pre-index the repository before review (or use cached index)
- Build full symbol graph (functions, classes, imports, call sites)
- Track cross-file dependencies for all changed symbols
- For each changed function/method, automatically include:
- Callers of the changed function (who will be affected?)
- Callees that the changed function depends on (is the contract respected?)
- Type definitions used in the changed signatures
- Interface/trait implementations if the changed code implements one
- Rank context by relevance to fit within the context budget
- Surface cross-file impact in the review output ("This change to
parse() affects 4 callers in api/handler.rs")
Current State
symbol_index.rs — regex and LSP-based symbol resolution ✅
symbol_graph.rs — dependency graph construction ✅
context.rs / ContextFetcher — surrounding code extraction ✅
context_helpers.rs — context budget management ✅
- Gap: The review pipeline (
pipeline.rs) doesn't fully query the symbol graph for cross-file impact analysis
Competitive Context
- Greptile: Full repo graph is their core differentiator, 82% catch rate
- CodeRabbit: "CodeGraph" analysis for cross-file understanding
- GitHub Copilot: Agentic — reads source files and explores directories
- Bito: Indexes whole repository before reviewing
Priority
Tier 1 — Table stakes for review quality. This is likely the single highest-impact improvement for catch rate.
Problem
Greptile's published 82% bug catch rate (vs ~46% industry average) correlates directly with full-repository graph indexing before reviewing any diff. DiffScope already has
symbol_graph.rsandsymbol_index.rswith cross-file dependency tracking, but this context is not fully leveraged when constructing the review prompt at PR time.The architecture exists. The wiring is the gap.
Proposed Solution
Enhance the review pipeline to:
parse()affects 4 callers inapi/handler.rs")Current State
symbol_index.rs— regex and LSP-based symbol resolution ✅symbol_graph.rs— dependency graph construction ✅context.rs/ContextFetcher— surrounding code extraction ✅context_helpers.rs— context budget management ✅pipeline.rs) doesn't fully query the symbol graph for cross-file impact analysisCompetitive Context
Priority
Tier 1 — Table stakes for review quality. This is likely the single highest-impact improvement for catch rate.