Working set for a change
scopeIdentify files a symbol change is likely to touch—callers, callees, implementations, tests, and historically co-changed files—to plan edits and know what to read and check.
Instructions
The files a change to one symbol is likely to touch: orient's call-graph files (callers, callees, implementations, tests) plus files that have historically changed in the same commits as the symbol's file, each with its reason. Use when planning an edit, to know which files to read and check. Advisory, not a boundary: real changes often touch files outside it.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| up | No | How many levels of callers to walk (default 2: test cases usually sit one helper above the code they exercise). | |
| down | No | How many levels of callees to walk (default 1). | |
| symbol | Yes | A function, method, type or property: "updateLocation", "Engine.updateLocation", or an exact position "Sources/Engine.swift:204:10" (1-based line:column, on the name). | |
| profile | No | Source-language profile; required for bare names in mixed workspaces. | |
| project | No | Workspace-relative project directory, e.g. tools/driver for a nested Cargo package. Without it, a path:line:column symbol is answered from its enclosing Cargo workspace, else from its nearest project marker (a warning says when that leaves part of the workspace out). | |
| max_nodes | No | Maximum graph nodes per direction and reference contexts; lower it for compact answers. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| root | Yes | ||
| files | Yes | The working set: symbol file first, then call-graph files, then files found only through history or links. | |
| stats | Yes | ||
| counts | Yes | ||
| symbol | Yes | ||
| profile | Yes | ||
| warnings | Yes | ||
| co_change | Yes | ||
| truncated | Yes | The call-graph walk hit max_nodes. |