Repository navigation
Release checklist: merge the dev to main release PR with a merge commit (#6488) - #6489
Merged
Merged
Conversation
Squash-merging a release PR leaves dev's commits out of main's history, so the next release PR conflicts on every file dev changed. Step 10 now says to merge the dev to main release PR with a merge commit, never squash (#6488).
erikdarlingdata
marked this pull request as ready for review
October 22, 2026 16:00
erikdarlingdata
enabled auto-merge (squash)
October 22, 2026 16:00
There was a problem hiding this comment.
Verdict: LGTM
Claims
- VERIFIED — "one bullet added after the 'open the release PR from
devtomain' bullet (now line 240)" — confirmed via diff hunk arithmetic (@@ -237,6 +237,7 @@, new line is the 4th of 7 context+added lines, landing at 240) andgit show HEAD:.claude/skills/release-checklist/SKILL.mdline 240 - VERIFIED — "No other line changes" / single-line diff —
gh pr viewreports additions:1 deletions:0, andgh pr diffshows exactly one added line in one file - VERIFIED — "The release checklist did not say to use a merge commit, so the next release could repeat the conflict" — grep for
squash/merge commitacross the pre-existing file (minus the new line) finds zero hits before this change - VERIFIED — "
Darling/Darling.Tests/StatementColumnCensusTests.csmentions the release-checklist skill only in a comment (line 934) and does not readSKILL.md" — confirmed: line 934 is a///comment, no other reference toSKILL.md/release-checklistin that file - UNVERIFIED — "The 3.11.0 release PR (#6481) conflicted because 3.10.0 (#5645) was squashed into main" and "#6485 merged main into dev with a merge commit, which cleared the conflicts" — this checkout is shallow (2 commits visible) and the review's tool budget is scoped to PR 6489 only, so the cited PR/issue history can't be independently confirmed from this tree
- UNVERIFIED — "
plain-english/check.pyonSKILL.md: no hits on the new bullet... 107 hits in existing text" — noplain-englishdirectory, script, or reference to one exists anywhere in this checkout (grep -r "plain-english"repo-wide is empty); plausibly tooling external to the repo (the brief/coordinator tooling the body also references), but it cannot be confirmed or refuted from the tree
Riskiest lines
.claude/skills/release-checklist/SKILL.md:240(the single added bullet) — it's prose, not code: the only "risk" is the historical claim being wrong or the GitHub merge-method UI not matching, neither of which is checkable from a read-only tree — UNCOVERED, but the PR body's own test-plan item 3 ("No tests run... this is a doc edit") is the one-sentence justification the coverage rule asks for- N/A — the diff contains exactly one changed line; there is no second risky line
- N/A — same reason
Traps near this diff
- "
.gitattributessaystext=auto eol=crlf... a diff that touches every line of a file is a line-ending conversion until proven otherwise" — does not apply:gh pr diffshows a clean single-line addition with all surrounding context lines unchanged, not a whole-file rewrite (note: the sandbox's working copy of this file locally differs from the committedHEADby this same one line, pre-existing at session start per the attachedgitStatus, unrelated to the PR's actual committed content, which matchesgh pr diffexactly) - "Lite and Darling ship in parity... a fix to one SKU's reader, tool, alert or description without the counterpart's is a finding" — does not apply:
SKILL.mdis a single shared release-process document already covering both SKUs' steps (e.g. the Linux/Darling-specific section at line 211+ sits in the same file as the Windows steps); this bullet is about the shareddev→mainPR step, not a SKU-specific surface
Divergence (blind read vs PR body)
None — the body's account matches the diff on every claim that could be checked from this tree. The two historical-event claims (3.10.0/3.11.0/#6485) and the plain-english/check.py test-plan claim are outside what a read-only checkout of this scope can confirm or refute, but nothing in the tree contradicts them either.
Reviewer checklist
- Confirm the repository's GitHub merge-button settings actually allow "Create a merge commit" (not restricted to squash-only) for PRs into
main, since the new instruction assumes that option is available
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Claude posting for Erik Darling.
Fixes #6488.
Why
The 3.11.0 release PR (#6481) conflicted because 3.10.0 (#5645) was squashed into main, so dev's commits never reached main's history. #6485 merged main into dev with a merge commit, which cleared the conflicts. The release checklist did not say to use a merge commit, so the next release could repeat the conflict.
Git history for this, from
git log:93a67dee6Release 3.10.0 (Release 3.10.0 #5645) (Merge main into dev so the 3.11.0 release PR has no conflicts #6483): the squash.7d6912c0aMerge main into dev so the 3.11.0 release PR has no conflicts: the sync commit.71bfee79cMerge pull request Merge main into dev (merge commit) so the 3.11.0 release PR has no conflicts #6485: the merge that cleared it.1b6af5187Merge pull request Release 3.11.0 #6481 from dev: the 3.11.0 release PR.What changes
.claude/skills/release-checklist/SKILL.md, step 10 "Commit and PR": one bullet added after the "open the release PR fromdevtomain" bullet (now line 240). It says to merge thedevtomainrelease PR with Create a merge commit, never squash, and gives the reason with the 3.10.0 and 3.11.0 history. The bullet text is the brief's text, unchanged.No other line changes.
git diff origin/dev...HEADshows one added line in one file.Test plan
plain-english/check.pyonSKILL.md: no hits on the new bullet (line 240). The file has 107 hits in existing text. Per the brief, those were left alone.Darling/Darling.Tests/StatementColumnCensusTests.csmentions the release-checklist skill only in a comment (line 934) and does not readSKILL.md, so no test reads this change.CHANGELOG
None (release process doc)
For the coordinator