Repository navigation
ci(nightly-next): the build picker may offer glaeda's nightly slot first - #26251
Merged
Merged
Conversation
…bel first Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-85ca59f74f02d81734c3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-85ca59f74f02d81734c3
teamleaderleo
temporarily deployed
to
ci-routing-agent
October 27, 2026 15:31 — with
GitHub Actions
Inactive
Collaborator
Author
|
Owned by an agent session · session |
Contributor
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
web and size checks: green |
teamleaderleo
temporarily deployed
to
ci-routing-agent
October 27, 2026 15:32 — with
GitHub Actions
Inactive
Collaborator
Author
|
Bead |
|
Found 2 test failures on Blacksmith runners: Failures
|
…htly slot Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-85ca59f74f02d81734c3
teamleaderleo
temporarily deployed
to
ci-routing-agent
October 27, 2026 15:50 — with
GitHub Actions
Inactive
teamleaderleo
temporarily deployed
to
ci-routing-agent
October 27, 2026 15:51 — with
GitHub Actions
Inactive
Contributor
|
Shipped in:
|
This branch was previously deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Leo, 2026-10-27: "BUT WTF COULD POSSIBLY BE MORE IMPORTANT ON OUR FUCKING MINIS". The standing order: a waiting nightly job is admitted on a mini ahead of every PR, DEV and side job.
Why
GitHub hands a queued job to the next idle runner in arrival order. So nightly-next's
build-nightly-app, queued on the shared side label, waits behind every PR job queued there first. Run 40518198747 shows it: queued onglaeda-side-light-xcode-26.6at 14:08Z, never acquired by a runner, moved to Blacksmith at 14:12Z, and still queued there at 14:28Z. At that time the std side label had 18 of 18 runners busy and the light side label 19 of 19.glaeda#1684 adds a nightly slot: one runner per mini, labelled
glaeda-nightly-std-xcode-26.6, that takes only nightly jobs. Its gate listens however full the mini is, and its job waits first in line on the mini, with every other runner there held.What
owned_label()innightly_build_runner.pyalso acceptsglaeda-nightly-<class>-xcode-<version>. Withvars.CI_NIGHTLY_NEXT_BUILD_RUNNERset to that label, the picker's order becomes:Main's rescue watches the label through the main PR beside this one, which lands first.
Tests
tests/test_nightly_build_runner.py: 24 OK, including the newtest_the_nightly_slot_comes_first_while_idle(an idle slot wins, a busy slot falls back to the side label, and near-miss labels are rejected).Risk
Low. Nothing changes until the variable names the label. The variable is set only after the slots are registered and main's rescue watches the label.
This touches the same
owned_labellines as #26237, the dispatch and re-run routing. The new test works with or withoutowned_route's attempt argument, so either PR can land first.Agent session: agent session
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.