Skip to content

feat(skills/drafting-a-release): gate the release point on the user#18

Merged
sourcehawk merged 2 commits into
mainfrom
feat/release-point-gate
May 31, 2026
Merged

feat(skills/drafting-a-release): gate the release point on the user#18
sourcehawk merged 2 commits into
mainfrom
feat/release-point-gate

Conversation

@sourcehawk
Copy link
Copy Markdown
Owner

Description

Adds a user-prompted gate to drafting-a-release for choosing what a release
is cut from. The skill previously cut silently from the default-branch tip and
never surfaced the release point as a decision, so a release could pick up
unfinished commits sitting on top of the intended cut. This gate asks, on every
release, whether to cut from the branch tip or a specific commit.

Changes

  • New first step ("Establish the release point") that always asks branch tip
    vs. a specific commit, ahead of establishing the baseline.
  • A specific commit can be given as a SHA, any resolvable ref, or a description
    of intent; the skill resolves it to one concrete commit and confirms short
    SHA + subject + date before using it — even for a literal SHA.
  • The resolved commit becomes <target>: the changelog/version range is bounded
    at <last-tag>..<target> and it is passed as --target at publish, keeping
    anything past the release point out of the notes.
  • Renumbered the choreography (gates are now steps 1, 3, 5, 6); the confirmation
    gate now always surfaces the commit the tag lands on.
  • Two anti-pattern rows and three red-flag rows countering the rationalizations
    observed in baseline testing.
  • Version bump to 0.5.0.

Testing

Developed through the superpowers:writing-skills RED→GREEN→REFACTOR loop with
isolated subagents (skill inlined, not loaded from the repo). RED: with the
current skill, a clean scenario was cut silently from main and a "WIP on top"
scenario had the agent infer the target itself without asking. GREEN: with the
new gate, the clean scenario's first question became "branch tip or a specific
commit?", and an intent-described point ("up to where the billing rework landed")
was resolved to the right commit, confirmed with SHA + subject + date, and used
as both the <last-tag>..<target> range bound and --target. No new
rationalizations surfaced in REFACTOR.

🤖 Generated with Claude Code

sourcehawk and others added 2 commits May 31, 2026 18:48
The skill silently cut releases from the default-branch tip: step 1
established the baseline from `<last-tag>..` (implicitly HEAD) and the
target was never surfaced as a user decision. Baseline subagent testing
confirmed agents either tagged HEAD without asking or inferred a target
themselves from "WIP"-looking commits and folded it into the version
question — never asking where the release should be cut.

Add a first gate that asks, on every release, whether to cut from the
branch tip or a specific commit. A specific commit may be given as a SHA,
any resolvable ref, or a description of intent; the skill resolves it to
one concrete commit and confirms short SHA + subject + date before using
it. The resolved commit bounds the changelog range at `<last-tag>..<target>`
and becomes `--target` at publish, keeping anything past the release point
out of the notes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 31, 2026 16:49
@sourcehawk sourcehawk merged commit 36a4c68 into main May 31, 2026
1 check failed
@sourcehawk sourcehawk deleted the feat/release-point-gate branch May 31, 2026 16:49
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

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