| name | cross-repo-impact |
| description | Cross-repository contract analysis. Identifies downstream impact of changes to shared types, API contracts, or shared utilities. Used by kopi-reviewer in cross-repo pattern and when breaking changes are detected. |
| license | MIT |
| allowed-tools | ["file-search","mcp__github__authenticate"] |
cross-repo-impact
Cross-repository contract analysis skill.
Protocol
Step 1: Identify Shared Surface
- TypeScript interfaces/types exported from BE, consumed by FE
- REST API request/response shapes
- Event/message queue payload shapes
- Environment variables used by both
Step 2: Contract Diff
- Read current contracts in
contracts/
- Compare with what the new code produces/consumes
- Flag field added (additive — usually safe)
- Flag field removed/renamed (breaking — needs version bump)
- Flag type change (breaking — needs version bump)
Step 3: Downstream Check
For each changed shared surface, search other repos for consumers (GitHub MCP search). List each consumer with file:line. Assess whether consumer breaks silently or loudly.
Step 4: Migration Plan
If breaking change is unavoidable:
Option A: Versioned endpoint (API v2 alongside v1) ← preferred (constitution Article III)
Option B: Dual-write period (produce both old and new shape)
Option C: Feature flag (new shape only for flagged users)
Step 5: Output
{
"changed_surface": ["POST /api/v1/reservations request body"],
"breaking": true,
"downstream_consumers": [
{ "repo": "azoom-carparking-qr-code", "file": "src/api/reservation.ts", "line": 23 }
],
"recommended_strategy": "versioned_endpoint",
"migration_effort": "medium"
}
Constitution Check
Article III (API Versioning) applies to all cross-repo contract changes. Reviewer must flag any change that modifies a live endpoint without version bump as HIGH finding.