Skip to content

Release checklist: merge the dev to main release PR with a merge commit (#6488) - #6489

Merged
erikdarlingdata merged 1 commit into
devfrom
fix/6488-release-merge-commit
Oct 22, 2026
Merged

erikdarlingdata merged 1 commit into
devfrom
fix/6488-release-merge-commit

Conversation

@erikdarlingdata

Copy link
Copy Markdown
Owner

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:

What changes

  • .claude/skills/release-checklist/SKILL.md, step 10 "Commit and PR": one bullet added after the "open the release PR from dev to main" bullet (now line 240). It says to merge the dev to main release 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...HEAD shows one added line in one file.

Test plan

  • plain-english/check.py on SKILL.md: no hits on the new bullet (line 240). The file has 107 hits in existing text. Per the brief, those were left alone.
  • Diff is one added line in one file.
  • No tests run. The brief says this is a doc edit: build nothing, run no tests. Darling/Darling.Tests/StatementColumnCensusTests.cs mentions the release-checklist skill only in a comment (line 934) and does not read SKILL.md, so no test reads this change.

CHANGELOG

None (release process doc)

For the coordinator

  • Nothing to double-check beyond the one-line diff.

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
erikdarlingdata marked this pull request as ready for review October 22, 2026 16:00
@erikdarlingdata
erikdarlingdata enabled auto-merge (squash) October 22, 2026 16:00

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verdict: LGTM

Claims

  • VERIFIED — "one bullet added after the 'open the release PR from dev to main' 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) and git show HEAD:.claude/skills/release-checklist/SKILL.md line 240
  • VERIFIED — "No other line changes" / single-line diff — gh pr view reports additions:1 deletions:0, and gh pr diff shows 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 commit across the pre-existing file (minus the new line) finds zero hits before this change
  • VERIFIED — "Darling/Darling.Tests/StatementColumnCensusTests.cs mentions the release-checklist skill only in a comment (line 934) and does not read SKILL.md" — confirmed: line 934 is a /// comment, no other reference to SKILL.md/release-checklist in 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.py on SKILL.md: no hits on the new bullet... 107 hits in existing text" — no plain-english directory, 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

  1. .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
  2. N/A — the diff contains exactly one changed line; there is no second risky line
  3. N/A — same reason

Traps near this diff

  • ".gitattributes says text=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 diff shows 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 committed HEAD by this same one line, pre-existing at session start per the attached gitStatus, unrelated to the PR's actual committed content, which matches gh pr diff exactly)
  • "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.md is 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 shared dev→main PR 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

@erikdarlingdata
erikdarlingdata merged commit 2612cf5 into dev Oct 22, 2026
44 of 47 checks passed
@erikdarlingdata
erikdarlingdata deleted the fix/6488-release-merge-commit branch October 22, 2026 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant