Skip to content

fix(ci): anchor release-please to the 1.0.0 commit - #16

Merged
andreszorro merged 1 commit into
mainfrom
fix/release-please-last-release-sha
Aug 17, 2026
Merged

fix(ci): anchor release-please to the 1.0.0 commit#16
andreszorro merged 1 commit into
mainfrom
fix/release-please-last-release-sha

Conversation

@andreszorro

Copy link
Copy Markdown
Collaborator

Running pnpm release:pr for real surfaced a defect that no dry run had: the release pull request it opened (#15) carried a 98-entry changelog reaching back into pre-public history — "added support for storing dark mode", "add dagre and graphlib as window globals", "basic layout styles".

Cause

bootstrap-sha was removed when 1.0.0 landed, on the reasoning that from then on the last git tag would be the anchor. No tag was ever created. 1.0.0 was a version in the manifest, not a release — release-please github-release reports "Would tag 0 releases" precisely because there is no merged release pull request behind it. With no tag and no bootstrap, the commit walk started at the first commit in the repository.

Fix

last-release-sha names the commit that 1.0.0 corresponds to (5e0ec6d, the merge of #9), which is what release-please wants when a version has no tag behind it.

It belongs at the root of the config, not inside packages["."] — the same place bootstrap-sha occupied. Nesting it silently does nothing, which cost a round here and is worth knowing.

Verified, not assumed

Run against this branch's own config with --target-branch, so the tool read the change rather than main's:

Entries
Before 93 distinct
After 6

And all six are genuinely post-1.0.0:

* add a Claude skill for rendering a workspace as an artifact
* anchor release-please to the 1.0.0 commit
* clear GHSA-mw96-cpmx-2vgc by upgrading rollup
* cut releases locally, without a GitHub App
* let release artifacts be attached to a hand-cut tag
* tell readers how to install the skill

After merging

Re-run pnpm release:pr — it updates #15 in place with the correct changelog. Do not merge #15 as it stands; it would write 98 entries of internal history into CHANGELOG.md and tag them 1.1.0.

🤖 Generated with Claude Code

The first `pnpm release:pr` produced a 98-entry changelog reaching back into
pre-public history — "added support for storing dark mode", "add dagre and
graphlib as window globals" — because release-please had nothing to measure
from.

`bootstrap-sha` was removed when 1.0.0 landed, on the reasoning that from then
on the last git tag would be the anchor. No tag was ever created: 1.0.0 was a
version in the manifest, not a release. So the walk started from the first
commit in the repository.

`last-release-sha` names the commit 1.0.0 corresponds to, which is what
release-please wants when a version has no tag behind it. The next release
covers the nine commits since, not all 118.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@andreszorro
andreszorro merged commit 726d990 into main Aug 17, 2026
10 checks passed
@upwind-code-us

upwind-code-us Bot commented Aug 17, 2026

Copy link
Copy Markdown

Upwind Upwind Code Scan - ✅ Proceed with Deployment

0 newly introduced vulnerabilities · 0 resolved · 0 total in this PR vs main

View full analysis in Upwind Console

Scan completed in 58s

Scan history (1 scan)
Commit Scanned at New Resolved Net
3acbf0c < 2026-08-17 01:39 UTC 0 0 0

Last scanned: 3acbf0c · 2026-08-17 01:39 UTC

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