Draft documentation
Docs
Driftwatch classifies each change as breaking, warning (may affect some clients) or safe. Request changes and response changes are judged in opposite directions.
Detection rules (current)
| Rule | Example | Severity |
|---|---|---|
path-removed / operation-removed | DELETE /customers/{id} removed | Breaking |
required-parameter-added | New required query parameter | Breaking |
parameter-now-required | Optional parameter became required | Breaking |
type-changed | integer → string, request or response | Breaking |
required-property-added | New required field in request body | Breaking |
property-removed | Response field removed (request: warning) | Breaking |
enum-value-removed | Request: breaking. Response: warning | Varies |
enum-value-added | New value in a response enum | Warning |
response-removed | 2xx removed: breaking. Other codes: warning | Varies |
deprecated | Operation marked deprecated | Warning |
*-added | New endpoint, operation, optional parameter or field | Safe |
Current limits
- OpenAPI 3.x in JSON only. YAML support is planned.
- Local
$refresolution only. Schemas are compared to a depth of 6. oneOf/allOfcomposition is not yet analysed in depth.
Roadmap
- Now: diff engine and browser demo.
- Next: YAML support, CLI, GitHub Action that comments on pull requests.
- Then: hosted spec monitoring, Slack alerts, and Claude-generated impact notes and migration patches.