Review a code change for breaking changes to public interfaces, breaking changes shipped without versioning or migration paths, inconsistent error shapes, undocumented behavior changes, overloaded sentinel values, and backward-incompatible type changes. Use when reviewing for API contract stability, backward compatibility, or consumer impact.
75
94%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Review a change through every consumer of the current interface: what breaks when a client sends yesterday's request to today's server, and whether anyone would know before production.
{ error: string } alongside { errors: [{ message }] }, so clients need per-endpoint error parsing.count used to include deleted items and now does not), changed defaults, and shifted sort order.null, undefined, empty collection or object, or fallback enum value that reuses an existing value for a new state, so clients cannot tell "no data" from "data exists but cannot be summarized".string to string | null) without updating consumers, an input narrowed (any string to UUID only), or a field switched between required and optional.Trace each change to the interface and classify it as additive, which is safe, or subtractive or mutative, which breaks.
For sentinel and semantic changes, audit the visible consumers for how they interpret the value, not only whether it still type-checks.
What counts as the public interface and how breaking changes are versioned is often a written project rule. Read the AGENTS.md or CLAUDE.md chain governing the changed files, from the repository root down.
Report contract changes you can point to on a specific line. Report a change that depends on how consumers use the API, such as a field whose meaning changes while its type stays the same, only when the impact is severe.
Do not report internal refactors behind an unchanged interface, naming style preferences unless they are inconsistent within the same API, slower responses, or additive changes such as new optional fields, new endpoints, or new query parameters with defaults.
Do not report internal changes when you are only guessing that they surface to consumers.
caafac3
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.