release: make RC and stable promotion reproducible - #41
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 78ae0644bd
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| } | ||
|
|
||
| function changelogReleases(contents: string): ChangelogRelease[] { | ||
| return [...contents.matchAll(/^## \[([^\]]+)\] - (\d{4}-\d{2}-\d{2})$/gm)].map((match) => ({ |
There was a problem hiding this comment.
Reject malformed release headings instead of skipping them
When a historical release heading has a formatting or date typo, such as ## [1.0.0-beta.3] - 2026/07/24, this exact-match parser silently omits it rather than rejecting the changelog. All subsequent ordering and live-lab checks then operate on the filtered list, so an older beta can be mistaken for the immediate predecessor and a live lab that is multiple releases behind can pass the release gate. Parse all bracketed release headings and explicitly reject any non-Unreleased heading that does not match the required format.
Useful? React with 👍 / 👎.
Summary
pnpm checkmainValidation
pnpm checkpnpm verify:releasepnpm test:e2e:firefoxRelease boundary
This PR does not create a tag or publish an npm package. Stable remains blocked on real external beta feedback triage and explicit maintainer approval.
Closes #40