Skip to content

feat(release): adopt ecosystem release ceremony tooling#11

Merged
pentaxis93 merged 6 commits into
mainfrom
issue-10/feat-release-ceremony-adopt-ecosystem
May 9, 2026
Merged

feat(release): adopt ecosystem release ceremony tooling#11
pentaxis93 merged 6 commits into
mainfrom
issue-10/feat-release-ceremony-adopt-ecosystem

Conversation

@pentaxis93
Copy link
Copy Markdown
Contributor

@pentaxis93 pentaxis93 commented May 8, 2026

Summary

  • Adds repo-owned release ceremony tooling for base's container-only release surface.
  • Splits metadata and tag publication workflows, with tag-time image identity verification and GitHub Release publication.
  • Addresses review findings by making RUNA_REF validation match Dockerfile checkout capability and making release publication atomic/rerunnable.

Changes

  • Adds scripts/release-check with metadata, notes, and release modes for changelog, Dockerfile label surface, workflow, release notes, and optional container image identity checks.
  • Adds scripts/release-cut as the non-cargo release operation for stable and RC tags, with atomic remote publication of main plus tag.
  • Adds scripts/checkout-runa-ref as the shared tag-or-SHA checkout substrate used by both metadata validation and the Dockerfile build.
  • Adds shell regression and adoption tests, including symmetric stable/RC release-cut fixtures, SHA checkout coverage, and simulated tag-push rejection recovery.
  • Adds RELEASING.md, README release guidance, changelog entries, and split GitHub Actions workflows.

GitHub Issue(s)

Closes #10

Test plan

  • ./scripts/test-release-check
  • shellcheck scripts/checkout-runa-ref scripts/release-check scripts/release-cut scripts/test-release-check scripts/verify-release-adoption.sh
  • ./scripts/verify-release-adoption.sh
  • ./scripts/release-check metadata
  • git diff --check
  • podman build --target runa-builder --build-arg RUNA_REF=969fe02d0a7e84b36cde67cfbc46e7550b08f22f .

Add release-check and release-cut tooling for base's container-only release surface, with workflow gates, operator documentation, changelog coverage, and shell regression/adoption tests.

Refs #10
pentaxis93 added 2 commits May 8, 2026 16:15
RUNA_REF validation now shares the same tag-or-SHA checkout substrate used by the Dockerfile, so metadata acceptance cannot outrun image build capability.

release-cut now publishes main and the release tag with an atomic push and restores local release state if publication fails, keeping reruns clean.

Refs #10
Release publication now uses a broad v-prefixed tag trigger and validates the exact release shape with release-check before container setup, so GitHub Actions minimatch semantics cannot block documented release tags.

Refs #10
pentaxis93 added 3 commits May 8, 2026 17:44
Release tag validators now reject leading-zero numeric identifiers across release-check, changelog headings, RUNA_REF tags, and the release workflow prerelease classifier.

Refs #10

Refs tesserine/commons#26
Reject non-commit RUNA_REF SHA objects before checkout so the labeled ref matches the built commit. Document and test manual RC GitHub Release recovery with --prerelease so manual recovery matches the automated workflow classification.

Refs #10
Fetch SemVer-shaped RUNA_REF values through refs/tags/<ref> so homonymous branches cannot shadow immutable release inputs. Cover both branch-shadowed tags and branch-only SemVer names with real-git regression coverage.

Refs #10
@pentaxis93 pentaxis93 merged commit 8dceb45 into main May 9, 2026
1 check passed
@pentaxis93 pentaxis93 deleted the issue-10/feat-release-ceremony-adopt-ecosystem branch May 9, 2026 03:48
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.

feat(release-ceremony): adopt ecosystem release ceremony tooling in base

1 participant