Zero-downtime is a promise teams make casually and break under pressure. Trust comes from boring, repeatable patterns: health checks that mean something, rollout policies that fail closed, and pipelines that refuse to promote without evidence.
Friday releases survive when rollback is a first-class path, not a hero move.
Kubernetes + Actions, without drama
We use progressive rollouts with readiness gates, migration jobs that run before traffic shifts, and GitHub Actions that publish artifacts once and promote the same build across environments. Canaries get real traffic and real metrics, not a green health endpoint alone.
Friday releases survive when rollback is a first-class path, not a hero move. If the canary fails, the previous revision is still warm and the pipeline already knows how to put it back.
Migrations that don’t strand traffic
Schema changes land expand-contract. Features that depend on new columns stay dark until the expand step is verified. The deploy pipeline blocks promote if a migration job has not reported success, even if the container image is fine.




