Skip to content

docs(skills): document the v1 release procedure and advisory-fork merge constraints - #2785

Merged
cliffhall merged 2 commits into
v2/mainfrom
v2/docs/2755-release-skill-v1-procedure
Oct 25, 2026
Merged

cliffhall merged 2 commits into
v2/mainfrom
v2/docs/2755-release-skill-v1-procedure

Conversation

@cliffhall

Copy link
Copy Markdown
Member

Closes #2755

The release skill's "The v1 line" section was four sentences with no steps, so cutting 1.0.3 (#2753) meant reconstructing the procedure, and the first attempt got the tag and the Latest flag wrong. This turns it into a procedure and records what that release taught about merging from advisory forks.

release skill: "The v1 line"

  • v1-1 Bump: a PR on v1/main (v1 + chore, board get tools working #11, no milestone). Edit the four package.json versions, the three inspector-* ranges and the 8 lockfile fields by hand, not with update-version, whose trailing npm install re-resolves the tree (v1: release 1.0.2 with the pending security and audit fixes #2080). Then npm run check-version, and npm ci must leave the lockfile clean.
  • v1-2 Merge order: the bump merges last.
  • v1-3 Release: gh release create X.Y.Z --target v1/main --title X.Y.Z --latest=false. The tag is bare (the v1 release tags ruleset covers refs/tags/1.*), and the release must not take the Latest badge from v2.
  • v1-4 CI: build, then publish (OIDC trusted publishing, publish-all → --tag v1-latest) and publish-github-container-registry.
  • v1-5 Verify: v1-latest is on the new version, latest is still v2, and isLatest is false.
  • v1-6 Notes: stay neutral while the advisories are unpublished, then edit the Release to link them.

security-advisory skill, step 5: "Merging from the private fork"

  • Private forks don't run Actions, so required DCO / build checks stay "Expected". The fix is to remove only the required_status_checks rule for the merge and then restore it from a snapshot. That is an admin act, so the skill says to get the maintainer's go-ahead first.
  • Merging an advisory merges all of its fork's PRs at once.
  • Chained fix branches need "Create a merge commit".

I checked every fact against origin/v1/main and the live repo: the package and lockfile fields, the update-version script, v1/main's workflow jobs, the 1.* tag ruleset, the required build check, and isLatest: false on 1.0.0–1.0.3. release stays disable-model-invocation: true. No description changed, so the listing budget stays at 3907/4000. verify:skills and local:gate pass.

🤖 Generated with Claude Code

…ge constraints (#2755)

Expand the release skill's "The v1 line" section into a procedure: the
hand-edited bump on v1/main (four package.json versions, three inspector-*
ranges, eight lockfile fields; not update-version), bump-merges-last, the
bare-tag --latest=false Release, what v1's CI publishes, how to verify the
dist-tags, and neutral notes for unpublished advisories.

Record in security-advisory step 5 what 1.0.3 taught about merging from a
private fork: required Actions checks never report there, an advisory merges
all its PRs at once, and chained fix branches need a merge commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: cliffhall <cliff@futurescale.com>
@cliffhall cliffhall added the v2 Issues and PRs for v2 label Oct 25, 2026
@cliffhall
cliffhall requested a balanced review from Copilot October 25, 2026 01:32

Copilot AI 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.

🟡 Changes recommended

Two verification instructions need correction: an unsupported GitHub CLI JSON field and a clean-worktree expectation immediately after uncommitted edits.

2 open issues
What changed in this PR

Documents the v1 release procedure and private advisory-fork merge constraints, addressing the gaps encountered while releasing 1.0.3.

Changes:

  • Adds v1 version-bump, merge-order, publishing, verification, and release-note steps.
  • Records required-check limitations, temporary ruleset changes, and stacked-branch merge requirements for advisory forks.
File Description
.claude/​skills/​security-advisory/​SKILL.md Documents private-fork merge constraints and protection-restoration safeguards.
.claude/​skills/​release/​SKILL.md Expands the v1 release outline into a six-step procedure.

Review effort: Balanced

Comment thread .claude/skills/release/SKILL.md Outdated
Comment thread .claude/skills/release/SKILL.md Outdated
Compare the lockfile before and after npm ci rather than requiring a clean
worktree the uncommitted bump makes dirty, and read isLatest from
gh release list, since gh release view has no such field.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: cliffhall <cliff@futurescale.com>
@cliffhall

Copy link
Copy Markdown
Member Author

Copilot round 1: both findings fixed in 17d82da.

  • v1-1 lockfile check: now compares the lockfile before and after npm ci (cmp) instead of expecting a clean worktree, which the uncommitted bump makes dirty.
  • v1-5 isLatest check: gh release view has no such field. It now uses gh release list --json tagName,isLatest.

Copilot AI 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.

🟢 Approval recommended

The documentation matches the linked requirements, both prior findings are resolved, and no blocking issues remain.

No open issues 🎉

2 resolved since last review

Review effort: Balanced

@cliffhall

Copy link
Copy Markdown
Member Author

Copilot review closed: round 2 came back clean (no inline comments, nothing suppressed), with both round-1 findings marked resolved.

@cliffhall
cliffhall merged commit 6078bef into v2/main Oct 25, 2026
11 checks passed
@cliffhall
cliffhall deleted the v2/docs/2755-release-skill-v1-procedure branch October 25, 2026 02:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

v2 Issues and PRs for v2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

release skill: document the v1 release procedure, and the advisory-fork merge constraints

2 participants