Skip to content

feat: support optional RELEASE_NOTES.md override for curated release notes#339

Merged
SebTardif merged 1 commit into
mainfrom
feat/release-notes-override
Jun 21, 2026
Merged

feat: support optional RELEASE_NOTES.md override for curated release notes#339
SebTardif merged 1 commit into
mainfrom
feat/release-notes-override

Conversation

@SebTardif

Copy link
Copy Markdown
Contributor

What

Add support for optional LLM-curated (or hand-written) release notes in the release workflow.

How

Two new steps in the release job:

  1. Apply custom release notes (after GoReleaser): checks for RELEASE_NOTES.md at the repo root on the tagged commit. If present, replaces the GitHub Release body via gh release edit --notes-file. If absent, auto-generated notes from release-please are used unchanged.

  2. Clean up release notes file (end of job): creates a short-lived PR to delete RELEASE_NOTES.md from main. Uses the GitHub App token so the cleanup PR triggers CI and auto-approve.

Also adds pull-requests: write permission to the release job for the cleanup PR creation.

Workflow for using it

  1. Before a release, write RELEASE_NOTES.md at the repo root with curated content
  2. Commit and merge it to main (e.g., docs: add release notes for vX.Y.Z)
  3. Merge the release-please PR
  4. Release workflow applies the curated notes and auto-removes the file

If no RELEASE_NOTES.md exists, the workflow behaves identically to before. Zero configuration changes required.

Matches the pattern already used in patchloom (PR #627).

…notes

Add two steps to the release job:

1. Apply custom release notes: after GoReleaser creates the GitHub
   Release, check for RELEASE_NOTES.md at the repo root. If present,
   replace the release body via gh release edit. If absent, the
   auto-generated notes from release-please are used unchanged.

2. Clean up release notes file: after the release completes, create
   a short-lived PR to delete RELEASE_NOTES.md from main (branch
   protection blocks direct pushes). Uses the GitHub App token so
   the PR triggers CI and auto-approve.

This enables an optional workflow where an LLM or human can write
richer, user-facing release notes before merging the release-please
PR. The pattern is purely opt-in with zero configuration changes.

Signed-off-by: Sebastien Tardif <sebtardif@ncf.ca>
@github-actions github-actions Bot added size/s 10-49 lines changed area/ci CI/CD workflows labels Jun 21, 2026
@SebTardif SebTardif enabled auto-merge (squash) June 21, 2026 00:28
@SebTardif SebTardif merged commit dca0a52 into main Jun 21, 2026
34 checks passed
@SebTardif SebTardif deleted the feat/release-notes-override branch June 21, 2026 00:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/ci CI/CD workflows size/s 10-49 lines changed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant