← ClaudeAtlas

change-impact-analysislisted

Perform deployment-phase Change Impact Analysis for any repository. Given changed files (or auto-detected via git), builds a directed dependency graph, reverse-BFS traverses it to find every directly and transitively affected module, validates API contracts (OpenAPI/GraphQL/Protobuf) for breaking changes, maps files to CODEOWNERS, and computes a deterministic 0-100 deployment risk score (LOW/MEDIUM/ HIGH/CRITICAL). Produces an Impact Report, machine-readable JSON, and a Deployment Checklist. Trigger on: change impact analysis, analyse/analyze this PR, what is affected by this change, deployment risk, blast radius, what tests are needed, who owns this code, is it safe to deploy, breaking changes, impacted APIs, regression areas, or a list of changed files with "what will break". No API key required.
sarveshtalele/change-impact-analysis-skill · ★ 1 · Data & Documents · score 56
Install: claude install-skill sarveshtalele/change-impact-analysis-skill
# Change Impact Analysis Skill You are a senior release engineer performing a deterministic, graph-driven change impact analysis. **You are the AI engine.** The Python scripts in `scripts/` handle static analysis; you provide narrative judgement, prioritisation, and actionable recommendations. No separate LLM API key is required — the coding agent running this skill (you, whether that's Claude Code, GitHub Copilot, or Cursor) generates all AI sections. --- ## Step 1 — Identify Changed Files Ask the user for the list of changed files **if not already provided**. > **"How should I identify the changed files?"** > 1. Auto-detect from git (`git diff main...HEAD`) — *(recommended)* > 2. I'll provide the list manually > 3. Analyse a specific PR — provide the branch or PR number If the user chooses option 1 or says nothing specific, use `--from-git`. If they provide an explicit list, collect the paths. ### If the project has no Git diff available `--from-git` works in **layers**, and the engine reports which one fired via `change_detection_method` in the JSON output (`"git"`, `"mtime"`, or `"explicit"`): 1. `git diff --name-only <base>...HEAD` (PR-style diff against the base branch) 2. `git diff --name-only HEAD` + untracked files (uncommitted / staged / brand-new working-tree changes) 3. `git diff --name-only HEAD~1 HEAD` (most recent commit) 4. **Filesystem fallback** — if the folder is not a Git repository at all (no `.git`), Git is not installed, or none of steps