Skip to content

docs(releasing): correct the handover — bootstrap-sha does not limit the scan - #354

Merged
IgorShevchik merged 2 commits into
mainfrom
claude/fix-releasing-handover
Aug 18, 2026
Merged

docs(releasing): correct the handover — bootstrap-sha does not limit the scan#354
IgorShevchik merged 2 commits into
mainfrom
claude/fix-releasing-handover

Conversation

@IgorShevchik

Copy link
Copy Markdown
Collaborator

Fixes a claim I got wrong in #352, disproved by the first release-please run (#353) an hour later.

What I wrote

bootstrap-sha in the config points at the pnpm bump (ff7007d), so release-please starts from a clean slate and will not re-describe the 36 commits already summarised by hand under ## [Unreleased].

What actually happened

The run found the existing v2.0.0 tag and scanned from there. #353's changelog reaches back to #56, #63 and #69 — every commit since v2.0.0, not just those after the bootstrap commit. bootstrap-sha appears to be consulted only when no prior release is found.

Why the correction is good news

No final manual release is needed after all: the generated section already covers the work, so the three-step handover I described is replaced by two edits on the release PR itself.

  1. The hand-written ## [Unreleased] block is stranded. The generated section is prepended above it, so it now sits below a released version with nothing to ever clear it — the exact failure mode the old text warned about, which happened anyway because the premise was wrong. Its entries carry causes and consequences the commit subjects do not, so folding the worthwhile ones into the generated section beats deleting them.
  2. The version needs a look. The bot proposes a patch unless it sees a feat: or a breaking marker, and this repo has merged neither since v2.0.0 — so chore(main): release 2.1.0 #353 proposes 2.0.1 for work that includes new public API. Release-As: or a direct edit raises it.

AGENTS.md is updated to match: contributors should stop adding to ## [Unreleased].

Refs #347

🤖 Generated with Claude Code

https://claude.ai/code/session_01F22e2ft66y7nuBJjzdThBr


Generated by Claude Code

claude added 2 commits August 18, 2026 04:54
…the scan

The first release-please run disproved what I wrote when adding it. The config
carries a bootstrap-sha, but the run found the existing v2.0.0 tag and scanned
from there, so the release PR describes every commit since v2.0.0 rather than
only those after the bootstrap commit. bootstrap-sha appears to apply only when
no prior release is found.

The consequence is better than the plan it replaces: no final manual release is
needed, since the generated section already covers the work. What does need
doing moves onto the release PR itself — folding in or dropping the now-stranded
hand-written [Unreleased] block, which the generated section is prepended above,
and checking the version, since the bot proposes a patch without a feat: or a
breaking marker and this repo has merged neither in a long time.

Refs #347

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01F22e2ft66y7nuBJjzdThBr
Review panel feedback, three findings converging on the same paragraph: the
overwrite caveat was stated in passing, no recovery was described, and the
Release-As route was presented as interchangeable with editing the PR when it
is in fact the thing that triggers the overwrite. All three were refuted as
wording preferences, and taken anyway — because I have since read the mechanism
out of the release-please source rather than inferring it.

updatePullRequest rebuilds the changeset from commits and pushes it with
force: true. Not a merge: every manual edit to the release branch is discarded,
on every push to main. That turns the two handover steps from a checklist into
an ordered pair — set the version first, since Release-As is itself a push to
main, and fold in last with nothing in between.

Also records why the hand-written block stays on main until that moment: it is
the only copy of those entries.

Adds an observed / read-from-source / not-yet-observed split, as the CTO lens
asked and as the instruction this setup came from does for its own claims.

Refs #347

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01F22e2ft66y7nuBJjzdThBr
@IgorShevchik
IgorShevchik merged commit 91e9e7f into main Aug 18, 2026
10 checks passed
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.

2 participants