impact_of_change
Identify code and tests affected by changing a symbol—direct and transitive callers—so you update and run the right tests before editing shared functions.
Instructions
What breaks if a symbol changes: code that uses it directly, code that uses that code, and the tests involved. Use this before editing a shared function, and run or update the tests it lists. Python, JavaScript and TypeScript are analysed structurally. Matches are by name, so check the same-name notes it returns.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | The file that defines symbol, when several files define that name. | |
| repo | No | Name of an indexed repo, as list_repos shows it. Leave out when only one repo is indexed. | |
| depth | No | 1 = direct users only; 2 or 3 also follows users of those users. | |
| symbol | Yes | The function, class or method you plan to change, e.g. "discount" or "Cart.total". |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| notes | Yes | ||
| tests | Yes | Citations of tests that exercise the target, directly or not. | |
| direct | Yes | ||
| symbol | Yes | ||
| target | Yes | path:start-end of the definition analysed. | |
| summary | Yes | ||
| indirect | Yes | ||
| same_name_definitions | Yes |