Release, Deployment, and Rollback Runbook
Current release checkpoint — October 7, 2026
Use the current handoff for source, image and rollback identity. Production serves 0ce1ccbe; pushed source at capture is 6400fe9f, with additional shared discovery edits. Full combined gates and signed-in acceptance are not complete. Preserve prior static assets as described in deployment. Recent releases used an admitted isolated build on the build host and supported prebuilt-image promotion on the app host; do not bypass admission/capacity gates or push HostSSH main merely for documentation synchronization.
This runbook supplements Deployment and Database Migrations.
Release Readiness
Before release, confirm:
npm run verify:launch -- --dry-run --jsonreports Node24.x, valid corenpm run typecheckpasses.npm run lintpasses.npm run lint:warning-budgetreports0/0.- Focused tests for changed behavior pass.
- Relevant Playwright smoke passes for changed workflows.
- Database migrations are reviewed for zero-downtime safety.
- Environment variables are present in the deployment target.
- Provider integrations are classified as ready, preview-only, or externally
environment, and the expected launch gate plan.
blocked.
Build and Deploy
The standard build command is:
npm run build
The standalone runtime check is:
npm run self-hosted:standalone-check
The production deployment path is described in docs/deployment.md. Keep the deployment target's Node runtime aligned with package.json (24.x). The local launch verifier auto re-execs with Node 24 when it finds an installed runtime, but the full npm run verify:launch command should run only against a controlled launch database because the browser workflow gates create app records.
Release Checklist
- Pull latest
main. - Install dependencies with
npm ci. - Run local focused verification.
- Run broad gates for launch-sensitive changes.
- Confirm migrations with
npm run db:status. - Apply migrations with
npm run db:deployin the deployment pre-step. - Deploy.
- Smoke the deployed URL.
- Watch logs, queues, and provider callback health.
Rollback
Rollback depends on whether the release included schema changes.
For code-only releases:
- Revert or redeploy the previous known-good commit.
- Confirm
/api/versionand login load. - Smoke affected workflows.
- Keep the incident notes with commit SHA and reason.
For releases with migrations:
- Stop additional deploys.
- Inspect whether the migration is backward compatible.
- If the old code can run on the new schema, roll back code only.
- If data repair is needed, write a forward fix migration or script.
- Avoid destructive down migrations unless explicitly reviewed.
Hotfixes
Hotfix PRs should be narrow and include:
- Failing behavior summary.
- Root cause.
- Focused regression test or explicit reason testing is not possible.
- Deployment and rollback notes.
- Owner for follow-up hardening.
Post-Release Checks
After release, verify:
- Authenticated dashboard load.
- Case CRUD smoke.
- Task mutation smoke.
- Document upload smoke.
- Portal entry smoke.
- Integration readiness and reliability dashboards.
- Background worker health and failed-job counts.
- Error logs and Sentry events, if configured.