Driftwatch
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)

RuleExampleSeverity
path-removed / operation-removedDELETE /customers/{id} removedBreaking
required-parameter-addedNew required query parameterBreaking
parameter-now-requiredOptional parameter became requiredBreaking
type-changedinteger → string, request or responseBreaking
required-property-addedNew required field in request bodyBreaking
property-removedResponse field removed (request: warning)Breaking
enum-value-removedRequest: breaking. Response: warningVaries
enum-value-addedNew value in a response enumWarning
response-removed2xx removed: breaking. Other codes: warningVaries
deprecatedOperation marked deprecatedWarning
*-addedNew endpoint, operation, optional parameter or fieldSafe

Current limits

  • OpenAPI 3.x in JSON only. YAML support is planned.
  • Local $ref resolution only. Schemas are compared to a depth of 6.
  • oneOf/allOf composition 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.