You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Co-author trailers are dropped from a freshly-created release PR (create path doesn't thread co-authors) #301
The Co-authored-by trailer block added in #292 (so GitHub credits contributors on the squashed release commit) is threaded into the release-PR refresh path but not the create path. A release PR opened by create-release-pr therefore has no trailer until some later push to next/hotfixes triggers a refresh. If a release is created and merged before any refresh, the squash commit ships with contributors uncredited — the exact case #292 set out to fix.
Where
Both release-PR actions run generate-comprehensive-changelog, which produces a co-authors output:
actions/github/jobs/update-release-pr (refresh) routes the body through update-pr-changelog and threads it: co-authors: ${{ steps.changelog.outputs.co-authors }} (action.yml:249). ✅
actions/github/jobs/create-release-pr (initial create) writes the body via actions/github/api/pull-requests with body-content: ${{ steps.changelog.outputs.changelog-content }} (action.yml:284) and never references the co-authors output. The pull-requests action takes a single body-content and writes it verbatim — no co-authors handling. ❌
Evidence
CLDMV/.github #300 (release: v4.27.5) was opened by create-release-pr and its body has the 👥 Contributors details but no <!-- co-authors --> / Co-authored-by: block.
Proposed fix
Give the create path the same dead-last append the refresh path gets:
actions/github/api/pull-requests/action.mjs — add an optional co-authors input; when non-empty, append it as the final paragraph before create/update: bodyContent = bodyContent.replace(/\s+$/, "") + "\n\n" + coAuthors (the same rule update-pr-changelog uses, so a later update-pr-coverage insert still lands above the <!-- co-authors --> marker and the trailers stay last).
actions/github/api/pull-requests/action.yml — declare the co-authors input.
actions/github/jobs/create-release-pr/action.yml — pass co-authors: ${{ steps.changelog.outputs.co-authors }} to that step.
Scope
Affects every CLDMV repo on the v4 release flow — any release PR is uncredited from creation until its first refresh. Follow-up to #292.
Activity
cldmv-bot commentedon Sep 16, 2026
Closed in v4.27.5 — resolved by #302.