Files
ComfyUI_frontend/docs/release-process.md
Christian Byrne 46895ee1a9 docs: add release process guide (#9548)
Adds a concise guide to `docs/release-process.md` explaining how the
release workflows interact, with focus on the version semantics that
differ between minor and patch bumps.

Key sections:
- How minor bumps freeze the previous minor into `core/` and `cloud/`
branches
- How patch bumps on `main` vs `core/X.Y` differ (published vs draft
releases)
- Why unreleased commits are dual-homed when a minor bump happens
- Summary table, backporting, publishing, and bi-weekly automation

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-9548-docs-add-release-process-guide-31d6d73d365081f2bdaace48a7cb81ae)
by [Unito](https://www.unito.io)

---------

Co-authored-by: Alexander Brown <drjkl@comfy.org>
2026-03-09 12:38:40 -07:00

2.2 KiB

Release Process

Bump Types

All releases use release-version-bump.yaml. Effects differ by bump type:

Bump Target Creates branches? GitHub release
Minor main core/ + cloud/ for previous minor Published, "latest"
Patch main No Published, "latest"
Patch core/X.Y No Draft (uncheck "latest")
Prerelease any No Draft + prerelease

Minor bump (e.g. 1.41→1.42): freezes the previous minor into core/1.41 and cloud/1.41, branched from the commit before the bump. Nightly patch bumps on main are convenience snapshots — no branches created.

Patch on core/X.Y: publishes a hotfix draft release. Must not be marked "latest" so main stays current.

Dual-homed commits

When a minor bump happens, unreleased commits appear in both places:

v1.40.1 ── A ── B ── C ── [bump to 1.41.0]
                │
                └── core/1.40

A, B, C become v1.41.0 on main AND sit on core/1.40 (where they could later ship as v1.40.2). Same commits, no divergence — the branch just prevents 1.41+ features from mixing in so ComfyUI can stay on 1.40.x.

Backporting

  1. Add needs-backport + version label to the merged PR
  2. pr-backport.yaml cherry-picks and creates a backport PR
  3. Conflicts produce a comment with details and an agent prompt

Publishing

Merged PRs with the Release label trigger release-draft-create.yaml, publishing to GitHub Releases (dist.zip), PyPI (comfyui-frontend-package), and npm (@comfyorg/comfyui-frontend-types).

Bi-weekly ComfyUI Integration

release-biweekly-comfyui.yaml runs every other Monday — if the next core/ branch has unreleased commits, it triggers a patch bump and drafts a PR to Comfy-Org/ComfyUI updating requirements.txt.

Workflows

Workflow Purpose
release-version-bump.yaml Bump version, create Release PR
release-draft-create.yaml Build + publish to GitHub/PyPI/npm
release-branch-create.yaml Create core/ + cloud/ branches (minor/major)
release-biweekly-comfyui.yaml Auto-patch + ComfyUI requirements PR
pr-backport.yaml Cherry-pick fixes to stable branches
cloud-backport-tag.yaml Tag cloud branch merges