Programmable Messaging API  ·  View 18 of 22  ·  Operations

Delivery Pipeline

Code, infrastructure and rules ship on three different paths, on purpose.

Editable source SVG draw.io All views
Source Service repository trunk based Terraform infrastructure Rule and route data not code Build Cloud Build Artifact Registry signed images Gates Unit and contract tests adapter contract Carrier simulator suite late, dup, silent receipts Binary Authorization Policy and residency check Environments Development simulated carriers only Staging one real test route Production canary by route Runtime change Rule set publish versioned, 30 s Route table publish no deploy Rollback pointer move must pass data path, reviewed on regression effective in 30 s Delivery Pipeline — Code, Routes And Rules Ship Differently Application we own Security / platform Data store Decision point Interface / broker synchronous batch failure / alternate event / async A jurisdictional rule change must not need a deployment; that is a requirement, so it gets its own path. v 1.0 · owner Integration Platform Architecture

Decisions

  • A jurisdictional rule change must take effect without a deployment, which is a requirement — so rule and route data get a reviewed publication path of their own.
  • The carrier simulator suite is a blocking gate: late, duplicated, silent and out-of-order receipts are tested before staging, because production cannot produce them on demand.
  • Production canaries by route rather than by percentage of traffic, since a route is the unit that actually fails.

Assumptions

  • One real carrier test route in staging; development uses simulators only.
  • Rule and route publications are effective in the data plane within 30 s, and roll back by moving a version pointer.

Risks

  • Data that changes behaviour without a deploy needs the same review as code, or the gate has simply been moved rather than kept.