Skip to content

task-release: Request reviews from the authors of released changes - #116

Merged
jtrobles-cdd merged 1 commit into
developfrom
claude/release-workflow-pr-reviews-1d171f
Sep 11, 2026
Merged

jtrobles-cdd merged 1 commit into
developfrom
claude/release-workflow-pr-reviews-1d171f

Conversation

@jtrobles-cdd

@jtrobles-cdd jtrobles-cdd commented Sep 11, 2026 •

Copy link
Copy Markdown
Member

Context

A release or publication pull request gathers the work of several people, and nothing told any of them that their changes were about to reach production. Both release task workflows now request a review from the GitHub user who authored each commit the pull request carries, behind an input that defaults to being on.

Decisions Somebody Should Weigh In On

  • The input defaults to true, so every caller starts requesting reviews as soon as this reaches master, including the five that run the production release on a schedule. A VCS repository that does not want it has to pass request_reviews_from_change_authors: false.
  • Both workflows open the pull request as a draft, and a review requested on a draft notifies the reviewer straight away rather than when it is marked ready for review, so the authors are notified at creation time rather than when somebody is actually ready for them to look.
  • The authors come from repos/{owner}/{repo}/pulls/{number}/commits rather than from gh pr view --json commits. The latter carries Co-authored-by trailers but truncates at 100 commits, which a release routinely exceeds, so the trade is that co-authors are not requested.
  • A user who cannot be a reviewer, such as one who has left the organization, produces a warning annotation rather than a failed job, because a release must not fail over a review request. That makes it a silent gap unless somebody reads the annotations.
  • In Release and Deploy to Production the new step runs after the checklist comment, so that an unreachable GitHub API costs the review requests rather than the checklist.
  • The header comment of each workflow was rewritten rather than extended with the new behaviour, because what it listed was the steps, which the step names already carry. What is there now is what the steps do not say, which for Release and Publish is the precondition that it only works when called from a merged pull_request event, since every value it builds the publication pull request from comes out of github.event.pull_request.

What I Could Not Verify

  • Neither workflow can be exercised outside a real release, and this VCS repository has no harness for running one, so the first release of a caller that takes this version is the actual test of it. What that first run has to show is that the step finds the authors at all: the pull request is created with the token of GitHub Actions, and the commit authors it reports are the ones GitHub resolved from email addresses, which is empty for a commit whose author it cannot match to a user.

@jtrobles-cdd jtrobles-cdd added the enhancement New feature or request label Sep 11, 2026
@jtrobles-cdd jtrobles-cdd self-assigned this Sep 11, 2026
@jtrobles-cdd
jtrobles-cdd marked this pull request as ready for review September 11, 2026 16:58
@jtrobles-cdd
jtrobles-cdd force-pushed the claude/release-workflow-pr-reviews-1d171f branch 5 times, most recently from 6f40084 to 1b68412 Compare September 11, 2026 18:35
- A release or publication pull request gathers the work of several people, and nothing told any of
  them that their changes were about to reach production.
- It is an input so that a VCS repository whose releases do not warrant it can turn it off, and it
  defaults to being on, because the common case is wanting the authors to know.
- The authors are read from the GitHub API rather than from the Git history, because only GitHub can
  resolve the email address of a commit to a GitHub user. The commits are paginated, as a release
  easily exceeds the size of a single page.
- A review is requested from one user at a time, because GitHub rejects the whole request when a
  single one of the users cannot be a reviewer, for instance because they have left the
  organization, and a release must not fail over that.
- In 'Release and Deploy to Production' the step runs last, so that an unreachable GitHub API cannot
  cost the release and deployment checklist, which is worth more than the review requests.
- The header comment of each workflow no longer lists the steps, which the step names already carry,
  and says instead what the pull request it opens is for, which none of them does.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@jtrobles-cdd
jtrobles-cdd force-pushed the claude/release-workflow-pr-reviews-1d171f branch from 1b68412 to 623b0e2 Compare September 11, 2026 18:40
@sonarqubecloud

Copy link
Copy Markdown

@jtrobles-cdd
jtrobles-cdd merged commit cc95386 into develop Sep 11, 2026
8 checks passed
@jtrobles-cdd
jtrobles-cdd deleted the claude/release-workflow-pr-reviews-1d171f branch September 11, 2026 18:46
@jtrobles-cdd jtrobles-cdd mentioned this pull request Sep 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant