# Provider API change breaks contract: pre-release checklist

Source: https://releasefailures.com/incidents/provider-api-change-breaks-contract/
Content version: 1.0.0
Verified on: 2026-10-21
Licence: CC BY 4.0

Definition: A third-party API changes a field or behaviour and the integration fails.
- [ ] PR-01 Run the integration suite against the provider sandbox on a daily schedule, not only on commits, and alert when a previously passing test fails with no code change. (test class: Integration tests)
- [ ] PR-02 Run the context permission check client against a stub that returns 404 with an explanation body and confirm the job fails with a logged upstream error instead of hanging in the queue. (test class: Integration tests)
- [ ] PR-03 Delete a speculative branch in the provider sandbox and confirm a new pull request opens for the same head branch. (test class: Integration tests)
- [ ] PR-04 Issue a token through a custom domain in a test tenant and confirm a resource server that validates iss still accepts it after the release. (test class: Integration tests)
- [ ] PR-05 Before releasing a change to the end of call webhook payload, run every published consumer contract and fail the release when any field's type set changes. (test class: Contract tests)
- [ ] PR-06 Run the consumer contract for each upstream endpoint against the provider's announced new path before the brownout date. (test class: Contract tests)
- [ ] PR-07 Schedule a production check that receives the end of call webhook into a strictly typed consumer and alerts on any parse error. (test class: Synthetic monitoring)
- [ ] PR-08 Schedule a production check that starts a job reading a context and alerts if the job moves to Failed. (test class: Synthetic monitoring)
