Security advisory merge ignores merge strategy and commit message #200267
Replies: 1 comment
-
|
💬 Your Product Feedback Has Been Submitted 🎉 Thank you for taking the time to share your insights with us! Your feedback is invaluable as we build a better GitHub experience for all our users. Here's what you can expect moving forward ⏩
Where to look to see what's shipping 👀
What you can do in the meantime 💻
As a member of the GitHub community, your participation is essential. While we can't promise that every suggestion will be implemented, we want to emphasize that your feedback is instrumental in guiding our decisions and priorities. Thank you once again for your contribution to making GitHub even better! We're grateful for your ongoing support and collaboration in shaping the future of our platform. ⭐ |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
🏷️ Discussion Type
Product Feedback
💬 Feature/Topic Area
Other
Discussion Details
I maintain
filecoin-project/filecoin-pinand recently published a security advisory (GHSA-m5ph-mmg5-6w5h) using the private fork workflow. When I used Merge pull request(s) in the advisory UI to land the fix on the public default branch, the behavior did not match what our repository settings and release tooling expect. I am filing this to document the gap and suggest two targeted improvements.What I observed
allow_merge_commit: falseand only allows squash or rebase merges. Our repo is configured squash + rebase only; the advisory flow still produced a merge commit on the default branch."Merge pull request #N from owner/repo-ghsa-...:branch"format with no way to customize it. The underlying commits in the private fork (with conventionalfeat:/fix:/docs:messages) are not reflected in that merge commit message.Why it matters
Many modern repositories disable merge commits and rely on squash or rebase to keep a linear, conventional-commit-friendly history. Release automation such as release-please, semantic-release, and similar tools often walk history with
git log --first-parent. When the only first-parent commit is a generic merge message, the underlying conventional commit metadata is invisible to those tools.In our case, a
docs:change merged via the advisory flow did not appear in the open release-please CHANGELOG PR. We only noticed after publish when reconciling the release.Asks
Honor repository merge settings in the advisory Merge pull request(s) flow: respect
allow_merge_commit,allow_squash_merge, andallow_rebase_mergethe same way the normal PR merge UI does (defaulting to the repo's preferred strategy when merge commits are disabled).Allow merge commit message customization, or at minimum include the source PR's commit messages in the resulting default-branch commit so
--first-parentrelease tooling can see conventional-commit metadata. Even when a merge commit is unavoidable, a customizable message (or squash-with-retained message) would prevent silent CHANGELOG omissions.My understanding of workarounds people use today
BEGIN_COMMIT_OVERRIDEblock in a follow-up PR body to manually inject CHANGELOG entries.Prior art
Concrete example
Happy to provide more detail if useful. Thanks for continuing to invest in the advisory workflow.
Beta Was this translation helpful? Give feedback.
All reactions