Skip to content

docs: add VERSIONING.md (image pinning, bundle semver, update/migration policy) - #46

Open
pofallon wants to merge 1 commit into
mainfrom
docs/versioning
Open

pofallon wants to merge 1 commit into
mainfrom
docs/versioning

Conversation

@pofallon

Copy link
Copy Markdown
Contributor

Documents the versioning & update policy we'd been treating as tribal knowledge.

What's covered

  • Two decoupled version numbers — the upstream image pin in compose.yaml vs our bundle version in package.json (the OCI tag + catalog version). build-catalog.sh reads package.json.
  • Image pinning — the validator-enforced rule (immutable tag or @sha256: digest; floating tags rejected) and why the project container should be tag + digest.
  • Bump-by-impact semver — our version describes impact on the Hola user, not a mirror of upstream's numbers (an upstream major can be our minor; an upstream patch can be our major).
  • When the project releases — pin + update coupled infra + VM-test the upgrade path + bump by impact.
  • Upgrade hazards — forward-only/no-downgrade, no-version-skip (Nextcloud/Immich), bundled-datastore major bumps (the postgres 16→17 footgun), back-up-first — pending the structured metadata in Safe stateful app upgrades: migration signaling, version-skip guards, pre-upgrade snapshots & data-aware rollback hola#284.
  • A pre-publish checklist; linked from the README.

Related

🤖 Generated with Claude Code

…on policy)

Documents how catalog packages are versioned and how we handle updates to the
underlying project:
- two decoupled version numbers (upstream image pin vs our package.json bundle semver)
- the validator-enforced image-pinning rule (immutable tag or @sha256 digest; prefer
  tag + digest for the project container)
- bump-by-impact-on-the-Hola-user semver (we translate, not mirror, upstream)
- what to do when the project releases (pin + infra + VM-test the upgrade path + bump)
- the upgrade-hazard summary (forward-only/no-downgrade, no-version-skip, bundled-
  datastore major bumps, back-up-first) pending the structured metadata in
  try-hola/hola#284; tracked for the existing bundles in #45

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant