G
Graphify
graphify.homes
Code review

How to review a pull request's blast radius with a code graph

A pull request's blast radius is the set of symbols, modules, routes, tests, and documentation that might be affected beyond the changed lines. A diff shows the proposed edit; a code graph shows where that edit can travel. Reviewers should use the graph to generate impact candidates, then verify every important path against source and tests.

Published Updated

Graphify outputs
graph.html
graph.json
GRAPH_REPORT.md

Graphify stores inspectable artifacts so codebase knowledge can be reviewed by humans and reused by AI coding assistants.

Pull request blast radius waves traveling through related codebase clusters

Start with

Changed symbols

Map each changed file and symbol to graph nodes before asking what else may be affected.

Trace

Reverse paths

Find callers, consumers, route handlers, docs, and tests that depend on the changed interface.

Verify

Source + tests

Treat graph paths as review candidates, not proof that runtime behavior is correct.

What is a code review blast radius?

A blast radius is the affected neighborhood around a change. It includes direct callers, transitive consumers, shared types, route boundaries, tests, operational configuration, and documentation that may need to change with the code.

  • A small diff can change a shared interface with many consumers.
  • A large diff can be locally contained if it does not cross architectural boundaries.
  • Impact can include non-code behavior such as contracts and operational assumptions.

Why is the pull request diff not enough?

The diff shows additions and deletions but not the dependency paths entering or leaving the changed code. Reviewers must reconstruct those paths manually unless a graph or code intelligence tool provides them.

  • Diff tools do not automatically identify distant callers.
  • Search finds strings but not every semantic dependency.
  • A graph can surface paths that are easy to miss in a folder-oriented review.

How does a code graph expose impact?

A code graph stores files, symbols, imports, calls, and documentation links as nodes and edges. Starting from changed symbols, reviewers can traverse incoming and outgoing relationships to build an impact list.

  • Identify direct callers and reverse dependencies.
  • Follow multi-hop paths into route handlers or data-access modules.
  • Connect changed code to design notes and tests.
  • Use confidence labels to separate extracted edges from inferred relationships.

What is a practical graph-assisted PR review workflow?

Build or refresh the graph for the reviewed commit, map changed symbols to nodes, inspect reverse dependencies and architecture boundaries, then read every high-impact source file and run the related tests.

  • Generate the changed-symbol list from the pull request.
  • Trace affected nodes with a bounded depth.
  • Rank findings by user-facing behavior, shared interfaces, and missing test coverage.
  • Attach source paths and evidence to every review concern.

How do you query the blast radius in Graphify?

Use Graphify's affected command from the changed symbol, then inspect the resulting paths in graph.json or the interactive report. Adjust depth and relation filters to avoid returning an unusable list.

  • Start with the smallest symbol that represents the changed contract.
  • Trace call or reference relationships depending on the codebase.
  • Refresh the graph after large rebases, directory moves, or generated-code changes.

What are the limits of graph-based review?

A graph may miss dynamic dispatch, runtime registrations, external services, feature-flag behavior, and deployment-specific configuration. The reviewer must use tests, traces, and source evidence to close those gaps.

  • Graph edges are a map of candidate impact.
  • Inferred or ambiguous edges need explicit source verification.
  • Runtime behavior and user impact require tests or observability.
Working commands

How do the setup commands fit together?

Trace reverse impact from a changed symbol

Shell
graphify affected "AuthService.refreshToken" --depth 2 --relation calls
FAQ

Frequently asked questions

Can a graph replace human code review?

No. It improves navigation and highlights candidate impact; reviewers still evaluate design, behavior, security, and product intent.

Does blast radius mean every path must change?

No. A path is a candidate for review. Many dependencies will remain valid after a compatible change.

When should the graph be rebuilt?

Refresh after structural changes, rebases, generated-code updates, or before reviewing a commit whose graph snapshot is stale.

How should results be presented in a PR?

List the changed symbol, affected path, source evidence, risk, and the test or manual check that covers it.

Key takeaways

What should you remember?

  • Use the graph to expand review from the diff to candidate impact paths.
  • Rank paths by user impact and shared-interface risk, then verify them in source and tests.
  • Graph review is evidence generation, not a substitute for behavioral testing.
Sources

Where can you verify the details?

Related Graphify guides

Continue through the Graphify topic cluster with pages that explain assistant context, architecture review, documentation, and graph-based codebase understanding.

Turn this concept into a real project graph

Start from the use cases page or upload a project ZIP to build a graph that your team can inspect and reuse.