بنقرة واحدة
lsp-tracer
Trace call graphs using LSP operations to identify regression impact
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Trace call graphs using LSP operations to identify regression impact
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Classify PR review comments on STP/STD documents into auto-fixable vs needs-human categories. Maps free-text feedback to QualityFlow domain rules for automated fix routing.
Resolve Jira ID to project configuration and load project context
Generate comprehensive v2.1-ENHANCED STD YAML with pattern metadata, variables, test structure from ALL STP scenarios (single file)
Orchestrate STP → STD pipeline (generates comprehensive STD YAML only)
Generate test stubs with PSE docstrings from STD YAML — language and framework driven by project config
Detect test conventions from a codebase to drive test generation without tier config
| name | lsp-tracer |
| description | Trace call graphs using LSP operations to identify regression impact |
| model | claude-opus-4-6 |
Phase: Pre-Processing User-Invocable: false
Trace call graphs using LSP operations to identify regression impact.
Invoked by the regression-analyzer subagent to trace code dependencies.
# Repo path: Read `repositories.yaml` from `project_context.config_dir` to get the repo path.
symbols_to_trace:
- name: HandleCPUHotplug
file: <repo_path>/pkg/controllers/vm/vm.go
line: 105
character: 6
- name: CPUHotplugSpec
file: <repo_path>/api/v1/types.go
line: 250
character: 6
- ...
# Optional: If symbols_to_trace is empty but feature_candidates is provided
feature_candidates:
explicit_mentions:
- ResourceInstance
- multiarch
component_hints:
- component: app-handler
package_path: pkg/handlers/
- component: node-labeller
package_path: pkg/handlers/node-labeller/
acceptance_criteria:
- VM can run on ARM nodes
If symbols_to_trace is empty but feature_candidates is provided:
For each candidate in explicit_mentions:
workspaceSymbol to search for the symbolsource: "jira_candidate"# Example workspaceSymbol query
LSP operation="workspaceSymbol" query="ResourceInstance" filePath="<repo_path>/pkg/" line=1 character=1
For each component_hint:
documentSymbol to list exported functionsComponent-to-Package Mapping:
Reference: Read {project_context.config_dir}/components.yaml for the complete mapping.
Parse each acceptance criteria item for:
Use Grep to find matching symbols:
Grep pattern="func Migrate" path="<repo_path>/pkg/"
discovered_entry_points:
- name: ReconcileNode
file: pkg/handlers/node-labeller/node_labeller.go
line: 45
character: 6
source: component_hint
component: node-labeller
- name: IsARM
file: pkg/handlers/node-labeller/util.go
line: 20
character: 6
source: explicit_mention
candidate: ARM
- ...
call_graph:
- symbol: HandleCPUHotplug
file: pkg/controllers/vm/vm.go
line: 105
incoming_calls: # Who calls this function
- caller: ReconcileResource
file: pkg/controllers/vm/vm.go
line: 45
relationship: direct
- caller: ProcessVMUpdate
file: pkg/controllers/vm/update.go
line: 89
relationship: direct
- ...
outgoing_calls: # What this function calls
- callee: ValidateCPUChange
file: pkg/controllers/vm/validation.go
line: 120
relationship: direct
- callee: UpdateSpec
file: pkg/handlers/instance/instance.go
line: 230
relationship: direct
- ...
references: # All code that references this symbol
- file: pkg/controllers/vm/vm_test.go
line: 456
context: test
- file: tests/hotplug_test.go
line: 78
context: test
- ...
- symbol: CPUHotplugSpec
file: api/v1/types.go
line: 250
usages:
- file: pkg/controllers/vm/vm.go
line: 110
usage_type: field_access
- file: pkg/handlers/instance/instance.go
line: 340
usage_type: type_assertion
- ...
dependency_chains:
- chain_name: CPU Hotplug → Migration
path:
- symbol: HandleCPUHotplug
file: pkg/controllers/vm/vm.go
- symbol: UpdateSpec
file: pkg/handlers/instance/instance.go
- symbol: PrepareMigration
file: pkg/handlers/migration/migration.go
impact: Migration may be affected by CPU hotplug changes
- ...
summary:
symbols_traced: 5
total_callers: 12
total_callees: 8
total_references: 45
max_chain_depth: 100
operation: incomingCalls
filePath: <absolute path to file>
line: <1-based line number>
character: <1-based column>
Returns list of functions that call the target function.
operation: outgoingCalls
filePath: <absolute path to file>
line: <1-based line number>
character: <1-based column>
Returns list of functions that the target function calls.
operation: findReferences
filePath: <absolute path to file>
line: <1-based line number>
character: <1-based column>
Returns all locations where the symbol is referenced.
operation: goToDefinition
filePath: <absolute path to file>
line: <1-based line number>
character: <1-based column>
Returns the location where the symbol is defined.
Repository Base: Read repositories.yaml from project_context.config_dir to get the repo path.
When reporting paths, use relative paths from repo root:
<repo_path>/pkg/controllers/vm/vm.gopkg/controllers/vm/vm.goMap code locations to features by reading {project_context.config_dir}/components.yaml path_to_feature mapping.
The following is an example of path-to-feature mapping (actual mappings come from components.yaml):
| Path Pattern | Feature |
|---|---|
pkg/controllers/resource/ | Resource Lifecycle |
pkg/handlers/migration/ | Migration |
pkg/controllers/migration/ | Migration |
pkg/*/hotplug/ | Hot-plug |
pkg/controllers/snapshot/ | Snapshots |
pkg/controllers/clone/ | Clone |
pkg/network/ | Networking |
pkg/storage/ | Storage |
Input:
# Repo path from `repositories.yaml` in `project_context.config_dir`
symbols_to_trace:
- name: HandleCPUHotplug
file: <repo_path>/pkg/controllers/vm/vm.go
line: 105
character: 6
LSP Calls:
incomingCalls on HandleCPUHotplug → finds ReconcileResourceoutgoingCalls on HandleCPUHotplug → finds ValidateCPUChange, UpdateSpecincomingCalls on UpdateSpec → finds PrepareMigration (Level 2)Output:
dependency_chains:
- chain_name: CPU Hotplug → Instance Update → Migration
path:
- HandleCPUHotplug (vm.go:105)
- UpdateSpec (resource.go:230)
- PrepareMigration (migration.go:45)
impact: Live migration depends on instance spec updates
recommended_test: Verify migration works after CPU hotplug