Skip to content

ci: signal release readiness when a version milestone completes - #41

Merged
pmaxhogan merged 2 commits into
mainfrom
feat/release-ready-signal
Jun 26, 2026
Merged

pmaxhogan merged 2 commits into
mainfrom
feat/release-ready-signal

Conversation

@pmaxhogan

Copy link
Copy Markdown
Owner

Pairs with the new GitHub Project roadmap (github.com/users/pmaxhogan/projects/1), where versions are tracked as milestones (v0.3.0, v1.0.0, v2.0.0).

When every issue in a version milestone is closed, this workflow comments on + labels (ready-to-release) the open release-please PR and @-pings me so I review the computed version + CHANGELOG and merge it myself.

Signal-only by design - it never merges anything. A bot merging the release PR with GITHUB_TOKEN would not trigger release-please.yml/release.yml (token-authored events start no workflow run), so no tag would be cut and nothing would actually ship. Milestone titles are also just planning labels (release-please computes the real version from commits), and milestone-100% says nothing about CI being green. So the merge stays a human click; this just removes the "did I notice the version is done?" gap.

Triggers: issues: closed (precise), a daily schedule backstop, and workflow_dispatch. Dedups per-milestone via a hidden sentinel comment. Uses GITHUB_TOKEN only (no PAT). Validated with actionlint.

🤖 Generated with Claude Code

https://claude.ai/code/session_012CyiRqk2DVwmJjEu5gcD1m

@pmaxhogan
pmaxhogan enabled auto-merge (squash) June 26, 2026 15:04
@github-actions

Copy link
Copy Markdown
Contributor

Coverage

Area main this PR delta
Rust (lib crates) 76.57% 76.57% +0.00 (OK)
UI (vue/ts) 86.94% 86.94% +0.00 (OK)

Gate: passed - no coverage regression (epsilon 0.1 pp).

Adds .github/workflows/release-ready.yml. When every issue in a version
milestone (v0.3.0, v1.0.0, ...) is closed, it comments on + labels the open
release-please PR and @-pings the maintainer to review + merge it. Signal-only
by design - it NEVER auto-merges: a GITHUB_TOKEN bot merge would not trigger
release-please.yml/release.yml, so no v* tag would be cut and nothing would
ship. Pairs with the new GitHub Project roadmap (milestones = versions).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012CyiRqk2DVwmJjEu5gcD1m
@pmaxhogan
pmaxhogan force-pushed the feat/release-ready-signal branch from 150df61 to 86b39dc Compare June 26, 2026 15:47
@pmaxhogan
pmaxhogan disabled auto-merge June 26, 2026 15:49
@pmaxhogan
pmaxhogan merged commit 4fa4a20 into main Jun 26, 2026
8 of 17 checks passed
@pmaxhogan
pmaxhogan deleted the feat/release-ready-signal branch June 26, 2026 15:49
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