Repository navigation
ci(release): lead the release body with its changelog section - #925
Conversation
Studio reads the catalog release body before offering an update and lists the changeset summaries it finds there. The generated notes are PR titles, so the body now starts with this version's CHANGELOG.md section and keeps the generated list after it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011fP3oaCegEv3nsGYanvaod
|
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: existential-engineering/catalog/.coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (1)
Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 4 reviews per hour. WalkthroughWhen no Changesets PR is pending and the version tag does not exist, the release workflow extracts the matching section from ChangesRelease notes
Priority: ➖ Normal Estimated code review effort: 2 (Simple) | ~10 minutes Change: Feature Merge Risk: ⚪ Minimal · up to Release notes should publish as intended, including generated notes when no changelog section matches. Architecture SummaryArchitecture risk: 🔵 Low · up to The changed surface does not map to a changed system, dependency edge, entrypoint, or external dependency. Changed systems: None identified. Architecture concerns Review detailsBefore / after behavior
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Description
Studio now asks before it installs a catalog update (existential-engineering/racks#3658, AUREO-1352). The prompt card shows a short what's-new list. Studio builds that list from the GitHub release body, joined across every version the user is about to skip, and keeps only changeset lines (
- <sha>: summary).Until now the release body was GitHub's generated "What's Changed" list, which is maintainer PR titles such as
catalog-import-merge: marshall (new=36 …). Studio deliberately ignores those, so the card had no list to show.This PR adds one step before Create GitHub Release. It extracts this version's section from
CHANGELOG.md(the lines between## <version>and the next##) intodist/release-notes.mdand passes that file asbody_path.generate_release_notes: truestays, so the action puts the changelog section first and appends the generated PR list and "Full Changelog" link after it for maintainers.awkthroughenv:, never through${{ }}insiderun:.dist/release-notes.mdisn't infiles:, so it isn't uploaded as a release asset.Checked the extraction against the current
CHANGELOG.mdforv3.68.0. It returns the whole 3.68.0 section (9 changeset entries) and stops at## 3.67.0. Studio's parser turns that into, for example, "Refresh Marshall: 36 new, 0 discontinued, 94 updated."Past releases keep their current bodies. Editing a published release's body on GitHub changes what Studio shows on its next check, so a bad line can be fixed after release without a workflow change.
Type of Change
Checklist
pnpm validateand it passes (no data changed)hpI added or changed names its source in the description (n/a)Additional Notes
This workflow change has no data change, so it carries no changeset (
changeset.ymlonly requires one fordata/*.yaml). The next release after merge is the first to use the new body.🤖 Generated with Claude Code
https://claude.ai/code/session_011fP3oaCegEv3nsGYanvaod
Generated by Claude Code
Summary by CodeRabbit