Ionize Docs
ADRs

0004, Push-to-main deployment

Why Ionize deploys on every push to main rather than via PR review gates

Status: Accepted Date: 2026-02 Stakeholders: Bobby Nannier

Context

Bobby is the sole maintainer and code author across all Ionize repos. PR workflows are an organizational pattern for gating changes, getting another set of eyes before merging. With one author, there are no other eyes.

CI is the gate that matters: lint, typecheck, tests, prod-config verification, image-pin enforcement, secrets scan. CI runs on every push.

Decision

Commit directly to main. No PRs. CI is the gate.

This applies to every Ionize repo: site, dashboard, auth, platform, sdk, canvas, ionctl, deploy.

Consequences

  • Fast iteration. A fix lands in seconds, not minutes.
  • CI must be green for main to be deployable. Red CI means rollback or fix-forward immediately.
  • No "draft" or staging branches. Use feature flags or unwired routes instead.
  • External contributors still PR. This ADR is about the maintainer's flow, not the contribution flow.

Revisit triggers

  • Ionize gains additional maintainers and needs review gates.
  • CI itself becomes unreliable.

On this page