Repository navigation
ci(release): make every version tag-driven and fix the dev channel #485
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 11 commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
7c760a6
ci(release): make every version tag-driven and fix the dev channel
EricAndrechek 7561ea1
ci(release): fix review findings from the pre-push reviewers
EricAndrechek 73b4f34
Merge remote-tracking branch 'origin/main' into ci-tagger
EricAndrechek cb7a198
ci(release): address round-2 review findings
EricAndrechek 1b2dfc7
ci(release): pin --signer-workflow on every provenance check
EricAndrechek f92dfdd
docs: fix the SDK versioning note and the board-token claim
EricAndrechek e0d9262
ci(release): split Dependabot by author, not by the github_actions label
EricAndrechek 55eca6f
ci(release): exclude Dependabot from Documentation too, fix caveat co…
EricAndrechek 425f5c5
ci(release): order CI & build above Documentation, widen the invariant
EricAndrechek 61e9464
docs: widen the release-notes invariant in both doc copies
EricAndrechek 45bb85d
docs: fix the Dependabot figure to count merged PRs, not opened ones
EricAndrechek 58cedc7
fix(ci): tighten semver validation and npm publish idempotency
EricAndrechek 49d172f
fix(ci): stop persisting git credentials in every release workflow
EricAndrechek f29dd54
docs: correct the scope claim on the credential-audit entry
EricAndrechek 1dd5e67
Merge origin/main into ci-tagger
EricAndrechek 17298a3
docs: record the README provenance fix in the changelog
EricAndrechek 58533dd
docs: drop two changelog entries the tree no longer supports
EricAndrechek 45fa1d3
Merge remote-tracking branch 'origin/main' into ci-tagger
EricAndrechek f1948b6
Merge origin/main (#489) into ci-tagger
EricAndrechek 1f65f84
docs: fix stale counts and re-file two paragraphs after the #489 merge
EricAndrechek f5eb4f8
docs: the release-notes routing is dry-runnable before merge
EricAndrechek 98d3bca
pretending already released to cut stuff we'd remove in a minute
EricAndrechek File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
This file was deleted.
Oops, something went wrong.
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,103 @@ | ||
| # GitHub's auto-generated release notes — the body of every GitHub Release. | ||
| # | ||
| # GoReleaser hands the body to GitHub (`changelog.use: github-native` in | ||
| # .goreleaser.yaml), and GitHub builds it from the PRs merged since the previous | ||
| # tag. main is squash-merged, so one PR is one line, titled with its | ||
| # Conventional Commit subject. This file is the only knob on that output — the | ||
| # `changelog.filters` in .goreleaser.yaml do not apply. | ||
| # | ||
| # Categories are matched by PR LABEL, top to bottom, first match wins; `*` is a | ||
| # catch-all for whatever the categories ABOVE it did not take. So a category is | ||
| # only as good as its labels: `github_actions` / `documentation` / `go` / | ||
| # `dependencies` are applied automatically by actions/labeler (path-based, see | ||
| # labeler.yml), while `breaking-change`, `security`, `bug`, and `enhancement` | ||
| # are applied by hand during triage — label the PR, or it lands in "Other | ||
| # changes". | ||
| # | ||
| # THE INVARIANT: every category keyed on a label that a DEPENDABOT PR CAN CARRY | ||
| # must have the Dependabot author exclude. Dependabot is separated by author | ||
| # rather than by label, and the final `*` category is what collects it — so any | ||
| # earlier category matching one of those labels intercepts bumps before they | ||
| # get there. Two sources feed that set, and checking only the first is not | ||
| # enough: labeler's path labels (`documentation`, `github_actions`, `go`, | ||
| # `dependencies`, `area/*`) AND the ecosystem labels Dependabot applies itself | ||
| # (`dependencies`, `javascript`, `go`, `github_actions` — `javascript` is not | ||
| # in labeler.yml at all). Two labels are load-bearing today, and both bit: | ||
| # | ||
| # github_actions labeler maps .github/workflows/** and .github/actions/**, | ||
| # so it marks our own CI PRs, not just Dependabot's action | ||
| # bumps (#446 is a hand-written CI PR carrying it). Excluding | ||
| # the LABEL from the catch-all filed all our CI work under | ||
| # Dependencies; dropping it instead empties that category, | ||
| # because Dependabot's action bumps carry `github_actions` | ||
| # and NOT `dependencies` (#480, #412, #341). | ||
| # documentation labeler maps docs/**, and the npm Dependabot config points | ||
| # at the workspace root, so every npm bump touches | ||
| # docs/package.json and gets labelled. Count only MERGED PRs | ||
| # here — an open or superseded bump never reaches a release | ||
| # body, and npm group bumps are routinely superseded before | ||
| # merge: 3 of the 23 Dependabot PRs merged to date carry it | ||
| # (#439, #416, #342). A bump or two per release rather than a | ||
| # flood, but the exclude costs nothing and the ratio grows | ||
| # with the npm surface. | ||
| # | ||
| # `security` deliberately has NO author exclude: a Dependabot bump that a | ||
| # maintainer hand-labels `security` is a security fix and belongs at the top, | ||
| # not buried under Dependencies. | ||
| # | ||
| # This routing cannot be linted locally. Dry-run it against real history before | ||
| # cutting a release: | ||
| # gh api -X POST repos/Wave-RF/WaveHouse/releases/generate-notes \ | ||
| # -f tag_name=vX.Y.Z -f target_commitish=main --jq .body | ||
| changelog: | ||
| exclude: | ||
| labels: | ||
| - duplicate | ||
| - invalid | ||
| - wontfix | ||
| categories: | ||
| # Ordered by what a reader upgrading needs to see first. `!` in the PR title | ||
| # marks the breaking change per Conventional Commits; the label is what puts | ||
| # it at the top of the notes. | ||
| - title: ⚠️ Breaking changes | ||
| labels: [breaking-change] | ||
| - title: 🔒 Security | ||
| labels: [security] | ||
| - title: ✨ Features | ||
| labels: [enhancement] | ||
| - title: 🐛 Bug fixes | ||
| labels: [bug] | ||
| # ABOVE Documentation deliberately. First match wins, and our CI PRs carry | ||
| # BOTH labels — AGENTS.md requires a doc update with every change, so a CI | ||
| # PR almost always touches docs/** or README.md too. Of the last 12 human | ||
| # PRs carrying `github_actions`, 10 also carry `documentation` (only #446 | ||
| # and #283 do not), so with Documentation first this category is dead on | ||
| # arrival and Documentation fills with `ci:` PRs. | ||
| # | ||
| # It is a trade, not a free win, and the cost side is real: a docs PR that | ||
| # also edits a workflow now files here. In that same window #290 | ||
| # (`feat(docs): live-demo hero panel`) and #277 (`feat(docs): prod-faithful | ||
| # dev loop`) both would, as would #187 and #193 further back. Counting only | ||
| # PRs that reach these two categories: ~7 genuine CI PRs rescued from | ||
| # Documentation against ~2-4 docs PRs misfiled as CI. Worth it because the | ||
| # CI population is the one that grows, but re-check the balance before | ||
| # copying this decision forward. | ||
| - title: 🔧 CI & build | ||
| labels: [github_actions] | ||
| exclude: | ||
| authors: [dependabot, "dependabot[bot]"] | ||
| - title: 📚 Documentation | ||
| labels: [documentation] | ||
| exclude: | ||
| authors: [dependabot, "dependabot[bot]"] | ||
| - title: 🧹 Other changes | ||
| labels: ["*"] | ||
| exclude: | ||
| authors: [dependabot, "dependabot[bot]"] | ||
| # Last, so a long Dependabot run never buries the changes people actually | ||
| # care about. `*` rather than a label list: everything reaching this point | ||
| # has already been excluded from the categories above by author, so this is | ||
| # exactly the Dependabot set — and a bump that somehow carried none of the | ||
| # dependency labels still gets listed instead of dropped. | ||
| - title: 📦 Dependencies | ||
| labels: ["*"] |
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
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.