ci: triage the GitHub milestone after a release - #660
Open
mwbrooks wants to merge 4 commits into
Open
Conversation
The "Next Release" milestone is renamed to the published release tag and closed, while a new "Next Release" milestone gathers the issues and pull requests that remain open. Items without a milestone are left alone. This was a manual step of the release runbook. The logic lives in scripts/triage-milestone.sh so a maintainer can rehearse it with DRY_RUN or run it by hand, and completed steps are skipped so an interrupted run is safe to repeat. The releaser app needed a new Issues permission to write milestones.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #660 +/- ##
==========================================
- Coverage 72.59% 72.54% -0.05%
==========================================
Files 239 239
Lines 20228 20228
==========================================
- Hits 14684 14675 -9
- Misses 4274 4277 +3
- Partials 1270 1276 +6 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
mwbrooks
marked this pull request as ready for review
August 29, 2026 00:01
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changelog
No user-facing changes. This is release automation only.
Summary
This pull request automates the GitHub milestone triage that currently happens by hand after every release.
Next Releasemilestone to the release tag, closes it, and creates a freshNext ReleaseNext ReleaseThe logic lives in
scripts/triage-milestone.shrather than inline in the workflow so a maintainer can preview it, rehearse it, or recover by hand when CI fails. Completed steps are skipped, so an interrupted run is safe to repeat.Preview
A dry run against this repository, which makes no changes:
Testing
Note: Only the DRY RUN has been verified. Optionally, we can test on a scratch repository. Otherwise, we can merge this PR and test on the next release.
Next Releasemilestone there with one open and one closed issue, then:v0.1.0is closed and holds the closed issue, and that a new openNext Releaseholds the open issue.No "Next Release" milestone was found, so nothing is triagedwithout creating a duplicate.403:$ gh api /orgs/slackapi/installations \ --jq '.installations[] | select(.app_slug=="slack-cli-releaser") | .permissions'Notes
Issues: Read and writewas added and granted to installation.Next Releaseis now hard-coded in three places:release.yml,dependencies.yml, and this script. Renaming it breaks all three together, which the maintainer's guide now warns about.vX.Y.Zregex as a second guard.Requirements