Home β€Ί EE Β· Deployment β€Ί Release versioning

Release versioning

Purpose: A version scheme and branch model that keeps artefacts, tags and deployments unambiguous.

Who this page is for

AudienceWhy it matters to you
All engineersDaily branch/version hygiene

Version scheme

SemVer-ish for a deployable product: MAJOR.MINOR.PATCH

SegmentBumped when
MAJORBreaking platform/content-structure changes (migration required)
MINORNormal feature releases (the default increment)
PATCHHotfixes on a released version

One version for the whole release: the all package, embedded bundles and git tag carry the same number. Consumers of exported JSON get API stability signals from it too (JSON contracts).

Branch model (trunk-based, release-branched)

main ──●──●──●──●──●──●──▢            (always releasable; PRs land here)
            └─ release/2.14 ──●──▢     (cut at code freeze; stabilisation only)
                   β”‚    └─ tag v2.14.0 β†’ artefact 2.14.0 β†’ prod
                   └─ hotfix commits β†’ v2.14.1 (cherry-picked back to main)

What gets a changelog entry

Author-visible changes (dialogs, templates, styles), API/JSON shape changes, config keys added/renamed, operational behaviour changes. Written for the two audiences who actually read it: content ops and the on-call engineer.

Quick navigation