| disable-model-invocation | true |
| name | verify-mechanical-change |
| description | Spawns two independent subagents to verify if the staged or specified git diff is purely mechanical (no behavior or UI changes), then synthesizes their findings to ensure high accuracy. |
Verify Mechanical Change Skill
Use this skill when the user wants to confirm that a change is purely mechanical and contains no changes to behavior, UI, or application logic.
Workflow
-
Retrieve the Git Diff:
Identify the diff to analyze. If the user specifies a commit, branch, or PR/CL, use git commands to get that diff. Otherwise, get the unstaged and staged changes in the workspace:
- Get staged changes:
git diff --cached
- Get unstaged changes:
git diff
- Combine them or ask the user if they want to analyze staged, unstaged, or both.
Save this diff as
DIFF_CONTENT.
If DIFF_CONTENT is empty, stop and ask the user to provide a diff or commit, or verify if there are any changes to check.
-
Invoke Two Parallel Subagents:
Invoke two parallel subagents using the invoke_subagent tool with TypeName: research (to ensure they have read-only tools to explore the codebase for tracing symbol usage/definitions).
Pass the identical prompt and DIFF_CONTENT to both.
-
Synthesize Findings:
- Wait for both subagents to return their findings.
- Compare their reports.
- If BOTH confirm the change is purely mechanical:
- Report: "Both subagents confirmed the change is purely mechanical." and briefly summarize the rationale.
- Synthesize and present the recommended testing opportunities for untouched/related behaviors.
- If EITHER rejects or finds a behavioral change:
- Report: "The change might NOT be purely mechanical."
- Detail the specific concerns, line numbers, and file names raised by the subagents.
- Summarize the potential behavioral or UI differences discovered.
- Synthesize and present the recommendations on how to test these behavioral changes.
- Present the synthesized findings clearly to the user.