You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The change is one contract item, D2.5: validate-release runs git check-ref-format --branch over the branch input and fails when git rejects it, ahead of D2.2's smoke exit, with an error echoing no part of the value. The workflow-ci-contract Skill's generated include carries the same text, refreshed by scripts/build_dist.py.
This machine's Skills were refreshed from 6e859734 as part of the release step, and skills_install.py --report reads current.
Next steps, in priority order
Nothing is carried out of this round. The next session ranks the open backlog from scratch, per backlog-burndown, rather than resuming a queue this one left.
Blockers and dependencies
CodeRabbit's free OSS allowance is one included review per hour on this repository. A feature pull request and its develop -> main promotion opened in the same hour cannot both get one: the second returns a rate-limit notice naming when it can next run, and asking again does not clear it. The promotion carries identical content, so proceed on the feature pull request's review, naming the commit range CodeRabbit itself reported, rather than parking the drive for an hour.
State a resume re-reads
registry/repos.json's releaseTrigger for this repository, read from origin/main's fetched tip rather than a working tree copy, since a promotion can change that entry in the same merge that is being released.
reports/canonical-review.json, for which canonical units are covered, stale, or never read here.
Parked decisions
None. No decision was raised and left unanswered this round. The two questions this round did raise, how far to drive the pull request and the scope of the merge, were both answered in session before the step they gated.
Section 5's S1, S4, and S10 rows were deliberately left unchanged, because each describes a run whose branch value is a real ref name, which the refusal never reaches. A later round reading those rows as stale should read this line first.
D2.5 was added as its own item rather than as a clause of D2.2, so that each item asserts one thing and D2.1 through D2.4 keep the numbers the audit reports and publish-release.yml already cite.
What was learned
Both review passes, the local strict one over the diff and the carried-content one over the two canonical units, returned no findings, which is unusual for new prose in this repository and is explained by the change being one item written against an implementation that already existed.
Track:
defaultPredecessor: #1549
What this round did
WORKFLOW.mdD2 not describing the release gate's branch-name refusal, through Record the Release Gate's Branch-Name Refusal in the D2 Contract #1550, squash-merged todevelopas4486984.mainas6e859734. Release run34655230808succeeded and cut 2.0.618.validate-releaserunsgit check-ref-format --branchover thebranchinput and fails when git rejects it, ahead of D2.2's smoke exit, with an error echoing no part of the value. Theworkflow-ci-contractSkill's generated include carries the same text, refreshed byscripts/build_dist.py.6e859734as part of the release step, andskills_install.py --reportreads current.Next steps, in priority order
backlog-burndown, rather than resuming a queue this one left.Blockers and dependencies
develop -> mainpromotion opened in the same hour cannot both get one: the second returns a rate-limit notice naming when it can next run, and asking again does not clear it. The promotion carries identical content, so proceed on the feature pull request's review, naming the commit range CodeRabbit itself reported, rather than parking the drive for an hour.State a resume re-reads
registry/repos.json'sreleaseTriggerfor this repository, read fromorigin/main's fetched tip rather than a working tree copy, since a promotion can change that entry in the same merge that is being released.reports/canonical-review.json, for which canonical units are covered, stale, or never read here.Parked decisions
None. No decision was raised and left unanswered this round. The two questions this round did raise, how far to drive the pull request and the scope of the merge, were both answered in session before the step they gated.
What not to repeat
branchvalue is a real ref name, which the refusal never reaches. A later round reading those rows as stale should read this line first.publish-release.ymlalready cite.What was learned
🤖 Generated with Claude Code
https://claude.ai/code/session_012u4N7gEcqT9QwTusr1qtUc