Pre-flight checks
action-gh-release version
v3.0.2
Runner operating system
macos-latest
Release target repository
No response
Reproduction repo, gist, or artifact
No response
Workflow snippet
- name: Create GitHub Release
uses: softprops/action-gh-release@v3
with:
tag_name: "1.0.0-beta"
prerelease: true
generate_release_notes: true
previous_tag: "1.0.0-prev"
append_body: false
Expected behavior
When a release already exists for the given tag, generate_release_notes should
overwrite the existing body with freshly generated notes — not merge/append them.
Actual behavior
On every re-run, the generated notes are merged into the existing release body,
causing the notes to appear duplicated. Setting append_body: false does not
prevent this because append_body only controls manually provided body/body_path
inputs — it has no effect on generate_release_notes behaviour.
Steps to reproduce
- Run the workflow for a tag — release is created with notes successfully
- Re-run the exact same workflow for the same tag (e.g. deploying a second flavour)
- Observe that release notes are duplicated in the existing release body
Relevant logs
No error logs — the action succeeds but the release body contains duplicated notes
Additional context
Current workaround: manually clear the release body before the action runs using gh release edit "$TAG" --notes "", then let the action regenerate notes fresh. But this is a workaround and ideally the action should handle
this natively.
Pre-flight checks
masteraction-gh-release version
v3.0.2
Runner operating system
macos-latest
Release target repository
No response
Reproduction repo, gist, or artifact
No response
Workflow snippet
Expected behavior
When a release already exists for the given tag, generate_release_notes should
overwrite the existing body with freshly generated notes — not merge/append them.
Actual behavior
On every re-run, the generated notes are merged into the existing release body,
causing the notes to appear duplicated. Setting append_body: false does not
prevent this because append_body only controls manually provided body/body_path
inputs — it has no effect on generate_release_notes behaviour.
Steps to reproduce
Relevant logs
Additional context
Current workaround: manually clear the release body before the action runs using
gh release edit "$TAG" --notes "", then let the action regenerate notes fresh. But this is a workaround and ideally the action should handlethis natively.