gograph_impact
Find every symbol that transitively calls a target to see the full upstream blast radius of a code change before refactoring.
Instructions
Traverse the call graph backwards to find every symbol that transitively calls the target — the full upstream blast radius of a change. The MCP server checks freshness before the call. Read-only; no side effects. Three modes: (1) single symbol via symbol; (2) uncommitted changes via uncommitted=true; (3) git-ref changes via since. WHEN TO USE: Before refactoring a core function to see what breaks. NOT TO USE: For direct one-hop callers only (use gograph_callers). RETURNS: Transitive upstream affected symbols; with mermaid=true, Mermaid flowchart text; a bounded native page (including empty pages). Exact and possible paths remain distinct; Mermaid uses dotted edges for possible evidence. Uncommitted modes compare declarations against HEAD, including selected untracked Go files. Current-graph consumers refuse incomplete comparisons, deleted declarations requiring historical caller evidence, and missing/ambiguous graph identities. Inspect changes --git REF for the declaration census; rebuild before traversing newly added symbols.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum rows per page; the byte budget may return fewer. | |
| since | No | Git ref (e.g. 'main', 'HEAD~5'): blast radius of all symbols changed since this ref | |
| cursor | No | Opaque next_cursor for the same graph snapshot and result selection. | |
| symbol | No | Symbol name for single-symbol blast radius (supports short name 'ValidateToken', dot-notation 'graph.Graph', or fully-qualified ID) | |
| mermaid | No | Return Mermaid flowchart text instead of the normal response | |
| exact_only | No | Exclude any path that depends on possible call evidence; default false retains explicitly labeled possible results | |
| uncommitted | No | If true, compute blast radius of all uncommitted modified symbols |