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
{{ message }}
Repository navigation
Prove stable release recovery does not require channel-note rewrites #604
Recovery #602 deliberately avoids rewriting semantic-release channel notes. That boundary currently rests on a disposable experiment rather than a maintained regression. A future dependency or configuration change could invalidate the assumption without required CI noticing.
Proposal
Extend the existing credential-free release-decision fixture using the shipped command and configuration. Exercise stranded stable tags with absent or matching default-channel notes, for both lightweight and annotated tags. At the tagged commit there must be no new version; one subsequent fix must choose exactly the next patch. Observe local and remote tag/notes refs and consumer files before and after each decision.
Acceptance criteria
All eight native stable/default-branch decisions run through the existing offline reusable callers and required release controls; the command remains pinned to the production semantic-release version.
The suite rejects an incorrect decision and any local/remote ref or working-file mutation, including channel-note changes. Negative controls must demonstrate rejection rather than merely inspecting fixture text.
Missing/matching note cases and both tag kinds preserve their original source; no channel-note repair is performed by the release command.
Review, merge, and observe the maintained fixture in hosted CI at the delivered head.
Refinement
Priority: High. Effort: Medium. Service class: Risk reduction. This is a separately deliverable safety regression for #602, not a recovery or rollout claim. No runtime feature or new dependency is introduced; existing offline callers already execute the fixture. The maintainer waived WIP limits for this round.
Activity