compatibility-matrixlisted
Install: claude install-skill Wanbinyu/api-platform-skills
# Compatibility Matrix
> Rows are deltas. Columns are consumers. Empty cells are failures.
## Overview
Map what changes -> who consumes it -> severity -> mitigation. Document unknowns; do not invent traffic you cannot evidence.
## Steps
1. **Freeze the change set**
Atomic deltas only: add/remove/rename/retype, path, status, header, auth, semantic change (same JSON, new meaning).
2. **Inventory consumers** (best effort)
First-party web/mobile, internal services, partners, SDKs, jobs/webhooks, unknown.
Evidence: grep paths/operationIds, gateway notes, README, user-stated owners.
3. **Classify each delta**
| Class | Examples |
|-------|----------|
| Safe additive | New optional field, new endpoint |
| Soft risk | New required request field; tighter validation |
| Hard break | Remove/rename/retype; remove endpoint |
| Semantic break | Same shape, different meaning (e.g. cents -> dollars) |
4. **Fill the matrix**
Cells: `none | low | high | unknown` + one-line reason.
5. **Mitigations for every high/unknown**
Dual-write/read, deprecation window, version bump, adapter, feature flag, research task.
6. **Decision**
`ship-additive` | `version-bump` | `block` | `research`.
## Exit criteria
- [ ] Discrete deltas listed
- [ ] Consumer inventory attempted (unknowns explicit)
- [ ] Matrix complete for delta x consumer
- [ ] Every high/unknown has mitigation or research task
- [ ] Go/no-go stated
## Anti-patterns
- "Only mobile uses this" w