8000 fix(release): leave unstable alone on versioned builds by norrietaylor · Pull Request #1712 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content

fix(release): leave unstable alone on versioned builds - #1712

Merged
norrietaylor merged 1 commit into
mainfrom
fix/versioned-release-leaves-unstable
Sep 25, 2026
Merged

norrietaylor merged 1 commit into
mainfrom
fix/versioned-release-leaves-unstable

Conversation

@norrietaylor
Copy link
Copy Markdown
Member

Why

record-smoked moved unstable to every smoked build, versioned ones included. Versioned builds now come from release/* branches, which can be behind main. Staging one rolled unstable users back to an older commit until the next nightly moved it forward again.

This implements decision 4 of the release-branch proposal: staged binaries are not pointed to by unstable.

Change

  • release.yml: the "Point unstable channel at this release" step runs only when assert-version outputs an empty release_version, which covers sha-keyed nightly and plain builds. The smoke record is still written for every build, so a versioned build can still be promoted.
  • Runbook (docs/internal/release-pipeline.md):
    • Step 4 no longer says the run moved unstable.
    • Step 5 installs a staged release through a private pointer (scripts/set-channel.sh --channel rc ...) instead of unstable.
    • The record-smoked reference says the same.

Notes

  • The 0.6.0 staging run in flight (run 36175272269) uses release/0.6.0's release.yml, so this change does not reach it. That run still moves unstable to 0.6.0, and the next nightly moves it back to main.
  • .github/workflows/ is CODEOWNER-gated; this needs CODEOWNER review.

Testing

record-smoked moved unstable to every smoked build, versioned ones
included. A versioned build can now come from a release branch behind
main, so staging it would roll unstable users back to an older commit
until the next nightly. unstable follows main: only sha-keyed builds
advance it, and a staged release reaches a channel only through the
promotion. The runbook's step 5 installs a staged release through a
private pointer instead.
@norrietaylor
norrietaylor requested a review from a team as a code owner September 25, 2026 18:45
@coderabbitai
coderabbitai Bot commented Sep 25, 2026
Copy link
Copy Markdown
Contributor

Warning

Review limit reached

  • Run on-demand review

This review includes 2 billable files and costs up to $0.50.

  • Ask an admin to make reviews automatic

Open in CodeRabbit

Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing.

Or wait 26 minutes for your next included review.

Check out review usage here.

View limit details

Limit details: You’ve used all 2 included reviews currently available.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Essentials

Run ID: f7013d1f-7f1d-4efc-b654-6c4806871ac6

📥 Commits

Reviewing files that changed from the base of the PR and between d208e3c and a845b7e.

📒 Files selected for processing (2)
  • .github/workflows/release.yml
  • docs/internal/release-pipeline.md

Comment @coderabbitai help to get the list of available commands.

@minimal-foundry
minimal-foundry Bot commented Sep 25, 2026 •
Copy link
Copy Markdown
Contributor

Approved: 1 finding, none above this repo's threshold at a845b7e72554.

Nothing to do.

Clobber: none: git log on release.yml and the runbook shows no recent fix reverted; the change is purely additive.

@minimal-foundry minimal-foundry Bot left a comment
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

minimal-review — approved

Verdict APPROVE — 1 finding, 1 inline.

# `unstable` advance, and only for a sha-keyed build: a channel never
# points at bytes that have not passed the smoke, and a versioned
# build never moves `unstable` (it follows main; a staged release
# reaches a channel only through promote). A dry run stages nothing, so `needs` alone already
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

NIT · style · confidence 0.55 · in record-smoked

The rewritten record-smoked comment block is wrapped at ~77 chars everywhere except this line, which is 101 chars: 'A dry run stages nothing, so needs alone already' is a leftover of the original two-line wrap that was not re-wrapped when four lines were added above it. Re-wrap to match the rest of the block.

What the reviewer checked

release.yml:1429 # reaches a channel only through promote). A dry run stages nothing, so needs alone already

Hand this to an agent
Act on a code-review finding.

File:       .github/workflows/release.yml
Lines:      1429-1429
Category:   style
Severity:   nit (reviewer confidence 0.55)

Finding:
The rewritten `record-smoked` comment block is wrapped at ~77 chars everywhere except this line, which is 101 chars: 'A dry run stages nothing, so `needs` alone already' is a leftover of the original two-line wrap that was not re-wrapped when four lines were added above it. Re-wrap to match the rest of the block.

First verify this against the code yourself. It is model output and
may be wrong. If it is wrong, or the tradeoff was deliberate, say so
and change nothing.

👍 useful · 👎 noise — react to tell the reviewer. Replying works too, and says more.

@minimal-foundry minimal-foundry Bot added the review:approved minimal-review approved the current head label Sep 25, 2026
@norrietaylor
norrietaylor merged commit 87c7362 into main Sep 25, 2026
33 checks passed
@norrietaylor
norrietaylor deleted the fix/versioned-release-leaves-unstable branch September 25, 2026 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review:approved minimal-review approved the current head

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

0