"Create PR" uses the oldest commit for title/body on a multi-commit branch

Status Open
Maintainer reply None cached
Activity 0 comments · opened Sep 12, 2026

What happened

On a branch with 3 commits — all committed and pushed before the PR was created — "Create PR" produced a pull request whose title and body were taken verbatim from the oldest commit. The PR's head SHA correctly pointed at the newest commit, so the whole branch was visible to the flow.

| event | time (UTC) |
| -- | -- |
| commit A (title/body came from this one) | 20:35:49 |
| commit B | 21:34:44 |
| commit C | 22:21:55 |
| PR created | 22:30:06 |

Expected

A title and body describing the branch as a whole, or at minimum derived from the newest commit.

This is not GitHub's own prefill behaviour: GitHub populates title/body from a commit only when the branch contains exactly one commit; with several it falls back to the branch name and an empty body. So something actively selected a commit, and selected the oldest one.

Why it matters

A reviewer reads a description covering roughly a third of the diff and reasonably believes it complete. On a squash-merge, the stale subject becomes the permanent commit subject.

In my case the two omitted commits included a behavioural change — a new code path that refuses certain requests under a configurable threshold — which the generated description never mentioned at all.

Secondary issues in the same flow

  1. The generated body contained the commit-message trailers (Co-Authored-By:, Claude-Session:) verbatim, rather than the PR-description footer. Those are commit trailers and shouldn't appear in a PR description.
  2. /bug is unavailable in web/remote sessions — it returns "/bug isn't available in this environment" — so there is no in-product path to report this from the environment where it happens.

Environment

Claude Code on the web (remote session).

View original on GitHub ↗