Skip to content

test: add release upgrade compatibility matrix #68

Description

@RentnerKev

Summary

Add an automated, evidence-backed release compatibility matrix for upgrades to
v1.0.0-beta.1.

The matrix must use real published images/artifacts. Do not invent theoretical Alpha versions or
substitute a synthetic fixture for an end-to-end published-image upgrade.

Required matrix

Every selected pull request that changes migrations or persisted/runtime contracts

  • fresh target install
  • v1.0.0-alpha.6 -> beta.1 target

Scheduled and Beta release gate

  • fresh beta.1 target install
  • alpha.6 -> beta.1 (mandatory supported path)
  • alpha.5 -> beta.1 and alpha.4 -> beta.1 (direct-support candidates)
  • real-image evaluation of alpha.1, alpha.2, and alpha.3 to determine whether direct or
    staged support can be promised

Representative schema epochs may be used for ordinary PR feedback, but the release gate must not
claim support for an untested public source release.

Workflow strategy

  • add a dedicated compatibility workflow with an explicit version matrix
  • trigger it on selected pull requests that change migrations, encryption/persistence, runtime
    snapshots, backup/restore, or production packaging
  • allow manual dispatch for diagnosis and release candidates
  • run the broader historical matrix on a bounded schedule and as a Beta release gate
  • keep normal PR feedback focused; do not download every historical image on unrelated changes
  • identify the exact source image digest, target commit/image, and failed stage in diagnostics

Verify for each supported path

Acceptance criteria

  • Dedicated compatibility workflow and version matrix exist.
  • alpha.6 -> beta.1 is a required Beta release gate.
  • Historical entries use immutable real release images/artifacts.
  • Selected PR, scheduled, manual, and release-gate triggers are documented and bounded.
  • Failures identify source, target, migration/reconciliation stage, and useful redacted logs.
  • The final supported/unsupported matrix matches fix: harden alpha-to-beta upgrade path #67 and public upgrade documentation.
  • No production secrets are used.

Priority and sequencing

P0. Validates #67, coordinates restore coverage with #71, reuses the existing production smoke
foundation, and provides version-specific evidence required by #75.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: ciContinuous integration and GitHub automation.area: databaseDatabase schema, migrations, and persistence.area: runtimeCaddy and privileged controller runtime behavior.

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions