Webhook Delivery Service · View 16 of 20 · Operations
The three gates
- Signature contract test: the canonical signed string is frozen by a test, because changing it silently breaks every consumer's verification at once (ADR-06).
- Address guard suite: DNS rebinding, redirect chains, scheme downgrade and private-range resolution, run on every build. This is the control that stops the worker fleet becoming an internal request forwarder.
- Egress range review: a change to the published NAT ranges is a breaking change to a public interface and goes through the same review as an API change (ADR-11).
Rollout
- Staging injects deliberately slow and deliberately dead endpoints on every run, because the interesting behaviour of this platform is entirely in how it handles consumers that misbehave.
- Canary on 5% of workers with a 30-minute soak watched on delivery success rate, with automatic rollback.
- Workers drain rather than being killed: an in-flight attempt completes, or its message returns on the visibility timeout. A 20 s drain against a 15 s attempt timeout.
Assumptions
- 5% canary, 30-minute soak and 20 s drain are stated assumptions sized against the attempt timeout, not measurements.
- Queue and policy configuration is versioned and staged like code, which matters most for the retry schedule and the concurrency caps.