chore(release): adopt new release pipeline (App auth + CHANGELOG extract)#24
chore(release): adopt new release pipeline (App auth + CHANGELOG extract)#24
Conversation
…act) Replaces manual-release.yaml with release.yaml modeled on the pattern adopted in bmad-builder. Uses BMAD Release Bot App token for pushes, runs `npm test` validation stack (lint + lint:md + format:check), extracts release body from CHANGELOG.md `## vX.Y.Z` section, fires Discord notification on success. No functional changes. gds's existing test script is intact and used as the pre-release validation step.
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 58 minutes and 18 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🤖 Augment PR SummarySummary: Updates the repository’s release automation to a new standardized pipeline using GitHub App authentication and CHANGELOG-driven release notes. Changes:
Technical Notes: This PR is workflow/infrastructure-only; the module code and existing validation scripts remain unchanged. 🤖 Was this summary useful? React with 👍 or 👎 |
| cancel-in-progress: false | ||
|
|
||
| permissions: | ||
| id-token: write |
There was a problem hiding this comment.
.github/workflows/release.yaml:21 id-token: write enables OIDC token minting, but this workflow doesn’t appear to use any OIDC-based auth. Keeping it increases the available token surface area unnecessarily.
Severity: low
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
| TAG="${{ steps.version.outputs.tag }}" | ||
| VERSION="${{ steps.version.outputs.version }}" | ||
| BODY=$(awk -v ver="$VERSION" ' | ||
| /^## v/ { if (found) exit; if (index($0, "## v" ver)) found=1; next } |
There was a problem hiding this comment.
.github/workflows/release.yaml:78 The index($0, "## v" ver) match can also match headings like ## v1.2.3-rc.1 when releasing 1.2.3, which could extract the wrong CHANGELOG section. This would make the GitHub Release notes incorrect even though a correct ## v1.2.3 - ... section exists.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
| --title "Game Dev Studio $TAG" \ | ||
| --notes "$BODY" | ||
| env: | ||
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
There was a problem hiding this comment.
.github/workflows/release.yaml:89 gh release create authenticates with secrets.GITHUB_TOKEN; if the repo/org config makes that token read-only, this step will fail even though a GitHub App token was already generated earlier. That mismatch can make releases flaky depending on repository settings.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
Summary
manual-release.yamlwithrelease.yamlmodeled on the pattern adopted inbmad-builderCHANGELOG.md## vX.Y.Zsection at release timeWhy
Aligns gds release infrastructure with the new pattern being rolled out across all BMad external modules. No functional or content changes; gds's existing
npm testscript (lint + lint:md + format:check) is intact and used as the pre-release validation step.This PR is infrastructure only. No fresh release is triggered. Retroactive v0.4.0 tag (matching the existing CHANGELOG entry at commit
07ef779) will be pushed separately after this merges, resolving the current package.json/tag drift (package.json at 0.4.0, latest tag v0.3.0).Test plan
07ef779and create GitHub Release from CHANGELOG