Skip to content

Ship & operate

Ship and operate

Updated Verified against 364c452 on 2026-09-27

Page actions

ChatGPT and Claude are third-party services. The link gives them this page's public address and a short instruction. This site records nothing.

How a change reaches users and what keeps production honest: branches, environments, the CI gates, releases, and the runbooks for deploys, rollbacks and the watchers.

A change travels one road. It starts on a branch from integration, passes every gate on a pull request, and is merged by the owner, which deploys staging. A release merges integration into main, which runs the gated production deploy: every required check on the exact commit, the API and the website proven before anyone can reach them, then promotion, then the tag. The app follows from that tag. Nobody deploys by hand, and every step can be undone.

The delivery pipeline Work branches from integration, passes the local gates and a pull request’s checks, and is squash-merged; the push runs deploy-staging, which builds the API functions and the web at that commit, aliases the staging site and verifies it. A release is a merge-commit pull request from integration to main; deploy-production waits for every required check plus playwright on the exact commit, deploys the API and verifies it by commit, builds the web unaliased and smokes it, promotes it with a public smoke and a rollback edge, then tags vX.Y.Z. The app re-archives at the tag so web, API and App Store share one version. Afterwards the data canary and uptime keep watching. 11 · The delivery pipeline From a branch to staging, to a release on main, to production and the App Store— every step gated by CI, verified by commit, and reversible Ship to stagingRelease to production An engineer — a branch from integrationAn engineera branch from integrationLocal gates — make ci · make docs-checkLocal gatesmake ci · make docs-checkThe pull request — every check on the commitThe pull requestevery check on the commitSquash merge — by the ownerSquash mergeby the ownerdeploy-staging — gates, preflight, builddeploy-staginggates, preflight, buildStaging verified — then a person looksStaging verifiedthen a person looksThe release pull request — a merge commit into mainThe release pull requesta merge commit into mainGates and preflight — every check, every secretGates and preflightevery check, every secretThe Render standby — deployed, verified by commitThe Render standbydeployed, verified by commitWebsite + API functions — built unaliased, provenWebsite + API functionsbuilt unaliased, provenPromote — smoked on the domain, or backPromotesmoked on the domain, or backThe way back — vercel rollback; revert a pinThe way backvercel rollback; revert a pinTag vX.Y.Z — only after a verified deployTag vX.Y.Zonly after a verified deployThe app follows — X.Y.Z (1), from the tagThe app followsX.Y.Z (1), from the tagAfter the release — make verify-prod · the data canary every 6 h · uptime every 15 minAfter the releasemake verify-prod · the data canary every 6 h · uptime every 15 minThe wiki follows the same chain — deploy-docs.yml: integration → staging; main → smoked, promotedThe wiki follows the same chaindeploy-docs.yml: integration → staging; main → smoked, promoted a personcomponent in this projectgate: fails the build or the deployproven, verified stateexternal systemexplanationflow: data or control moves this wayreference: pins, reads or derives from Source of truth: .github/workflows/deploy-production.yml ·.github/workflows/deploy-staging.yml · docs/process/branching.md ·docs/process/release.md v1.3.10 · verified 2026-09-27 · d85c2adSri Guru Granth Sahib Ji — Knowledge Base · engineering wiki
Poster 11 — the delivery pipeline: from a branch to staging, to a release on main, to production and the App Store, every step gated by CI, verified by commit, and reversible · open full size

How it works

  • Branching and delivery flowthe branch model, which pull requests squash and which merge, and why.
  • Environmentslocal, staging and production side by side: hosts, the API, data, protection, who deploys.
  • CI gateswhat every workflow and job proves, and which a merge requires (poster 10).
  • Release processthe steps from a green integration to a tagged production release.

Runbooks

  • Deploysthe CI-gated pipeline gate by gate, its secrets, and how to read a failed run.
  • Rollbackthe website and the API together, the Render standby, a dataset, the app.
  • Moving production to functionsthe per-context cut-over, gated on the performance baseline and the data canary.
  • The docs sitekeeping docs.gurbanisoul.com honest: deploys, watchers, pins, reviews.
  • Support inboxthe public support address and how mail to it is handled.
  • Launch-notice sign-upthe sign-up on the landing page and its privacy rules.

The handbook

The rules behind all of this — the invariants, local setup, delivery and versioning, brand and domains, the release timeline — are the engineering handbook.