Automate miner release versioning - #523
Conversation
Release proposal workflow computes the next miner-v version (patch/minor/major/custom) from tags and opens a version-bump PR; merging it tags, builds all platforms, and publishes the release.
dewabisma
left a comment
There was a problem hiding this comment.
Have you tested the CI workflows? It can be tricky to make CI works without actually run and see it works.
|
Yes thats why i did not merge yet ;) |
🔍 Review — Automate miner release versioning (CI)Verdict: 🟡 Approve with non-blocking comments The design is sound: the release-firing guard is correct (only a merged PR carrying the What it does
Strengths
Findings
Verification
🤖 AI-assisted review generated with Claude Code |
Summary
Replaces the manual version-entry miner release with the same automated flow as quantus-cli / chain / quantus-miner:
create_miner_release_proposal.yml(new): dispatch withpatch/minor/major/custom. Computes the next version from the latestminer-v*tag, bumpsminer-app/pubspec.yaml, and opens a PR labeledminer-release-proposal(labels auto-created on first run).publish_miner_release.yml(new): when that PR merges — verifies pubspec matches, tags the merge commitminer-vX.Y.Z, builds all platforms at the tag, and publishes the GitHub release (gh release create, with--notes-start-tagpinned to the previous miner tag so generated notes don't diff againstwallet-v*tags).create_miner_build.yml: now build-only and reusable (workflow_callwith arefinput); manual dispatch still available for test builds. The old in-workflow release job (deprecatedactions/create-release@v1) is removed.Notes
PAT_TOKENsecret forgh pr createso CI triggers on the release PR (same asADMIN_PATin the other repos). If it has expired, the proposal job fails at PR creation and the secret needs rotating.mainis already at pubspec0.5.0(manual bump) while the latest tag isminer-v0.4.5, so the proposal commit allows an empty diff; for the first run choose minor to releaseminer-v0.5.0.Test plan
minor, merge the bump PR, confirm tag + 3-platform release