Repository navigation
base red: owned pool sources accepts feat-cmux-next's own unrescued list - #30867
Merged
Merged
Conversation
test_ci_owned_pool_sources has failed on feat-cmux-next since cmux#30685: backend.yml's migrations-push-guard reads vars.RUNNER_POOLS, and only main's rescue copy could acknowledge it, while main takes no merges. feat-cmux-next's rescue copy now carries UNRESCUED_WORKFLOW_PATHS with backend.yml, and on feat-cmux-next the test accepts an unrescued entry from either copy. An unrescued entry changes no behaviour (the rescue acts only on watched paths), and watched paths still come from main's copy, the one that runs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-3bab30503f0b9a7059e5
teamleaderleo
temporarily deployed
to
ci-routing-agent
November 1, 2026 11:59 — with
GitHub Actions
Inactive
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)
Shipped in:
|
Collaborator
Author
|
Owned by an agent session · session |
teamleaderleo
temporarily deployed
to
ci-routing-agent
November 1, 2026 12:01 — with
GitHub Actions
Inactive
Collaborator
Author
|
Found 10 test failures on Blacksmith runners: Failures
|
teamleaderleo
added a commit
that referenced
this pull request
Nov 1, 2026
…_POOLS.linux test_ci_owned_pool_sources counts a RUNNER_POOLS read as a possible owned route. The 63 workflows this PR moves to the Linux pool go into feat-cmux-next's UNRESCUED_WORKFLOW_PATHS, the acknowledgement copy from #30867, which changes no behaviour. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d9093a0f1b2d0cbb0b2c
teamleaderleo
added a commit
that referenced
this pull request
Nov 1, 2026
…lacksmith size (#30878) * ci: secretless Linux jobs read RUNNER_POOLS.linux, not a hard-coded Blacksmith size 119 runs-on lines in 81 workflows ended in `vars.LINUX_RUNNER || 'blacksmith-4vcpu-ubuntu-2404'` or a hard-coded overflow pick whose own size is 4 vCPU (`vars.CI_CLOUD_OVERFLOW_SAVED && 'blacksmith-8vcpu-...' || 'blacksmith-4vcpu-...'`). They now read fromJSON(vars.RUNNER_POOLS).linux after the fork branches, as #30385 and #30685 do. Left as they are: jobs with secrets, an environment or a write token (RUNNER_POOLS.linux may be the secretless fleet route), ephemeral-required jobs, compile jobs with a measured size, measured 2/8/16 vCPU picks, portable-placement tails, nightly and notarization workflows, and files open PRs change. tests/test_ci_overflow_pick_reads_pool.py refuses a new one-size pick (growth-only per-workflow counts); test_ci_linux_single_size counts drop to what remains. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d9093a0f1b2d0cbb0b2c * ci: chromium-currency reads the Linux pool; overflow-pick test accepts the bounded ephemeral mirror Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d9093a0f1b2d0cbb0b2c * ci(owned-pool rescue): acknowledge the workflows that now read RUNNER_POOLS.linux test_ci_owned_pool_sources counts a RUNNER_POOLS read as a possible owned route. The 63 workflows this PR moves to the Linux pool go into feat-cmux-next's UNRESCUED_WORKFLOW_PATHS, the acknowledgement copy from #30867, which changes no behaviour. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d9093a0f1b2d0cbb0b2c * ci: leave release and publish workflows on their current runs-on Their build and verify jobs produce or check artifacts that get published, so moving them onto a pool that may become the GCP fleet route is a supply-chain trust change, not a routing one. The same name set as test_ci_blacksmith_linux_failover (release, publish, testflight, app-store, homebrew, bootstrap), plus the reusable workflows they call (cmux-next-source-archive, ios-screenshots, resolve-dispatch-ref), keep their base text. Counts and the rescue acknowledgement follow. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d9093a0f1b2d0cbb0b2c * ci: keep jobs that feed a credentialed job on the ephemeral mirror A secretless job whose outputs or success a secrets, environment or write-token job consumes (through needs, directly or not) stays on its base runs-on. Examples: stable-next plan (the DMG url Developer ID signs), cloud-vm-migrate preflight (the ref run with DATABASE_URL), pr-autofix repair (the diff push pushes). 22 jobs reverted; counts and the rescue acknowledgement follow. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d9093a0f1b2d0cbb0b2c --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
lawrencecchen
added a commit
that referenced
this pull request
Nov 2, 2026
…nd (#31997) "CI fast guards" was red on main d9a5828 and every main PR, then hit its 5 minute timeout. Five causes: - Hang: tests/test_gh_merge_green.py never ended since 626b052 (#30219). main_fix_evidence.GitHub.json pages until an empty page; the tests' recorded GitHub answers every ?page= with the same page, so base_red_excuse.py asked for pages forever. The walk now stops on a page shorter than 100 (GitHub's own rule, one request for a short list) or an empty one, and refuses past 50 pages. The recorded GitHub answers ?page=N with the Nth recorded page. tests/test_evidence_paginate_without_slurp.py covers the short page, the one-page list and a repeating reader. - test_glaeda_route_app_budget: nightly.yml promote-nightly-next's read token (d813217, #30206) skipped the revoke with checks:read, outside the narrow read set; it is revoked again. - test_ci_pr_runner_pool: the iOS seed job's bounded LINUX_RUNNER pick gained the 8 vCPU label in 679c44e (#31031); the expectation follows. - test_ci_fork_runner_routing: fast-checks.yml's checks job (c5fd30b, #30529) is behind `if: github.repository == 'manaflow-ai/cmux'`, which is stricter than the owner gate; the check accepts it (with a case that another repository's check is not a gate). - test_ci_owned_pool_sources: feat-cmux-next's rescue copy lists its RUNNER_POOLS readers as unrescued (feat #30878); main's test accepts either copy's unrescued list, as feat's does since #30867. Watched paths still come from main's copy.
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)
Base red fix. Since cmux#30685,
tests/test_ci_owned_pool_sources.pyhas failed on feat-cmux-next with.github/workflows/backend.yml: job migrations-push-guard reads vars.RUNNER_POOLS. #30761 kept that read on purpose. The test only accepts the acknowledgement from main's copy ofscripts/ci/owned_pool_rescue.py, and main takes no merges right now, so #30840 can't land.Change:
UNRESCUED_WORKFLOW_PATHSwith backend.yml and the reason: no secret, a live pool member, and a stuck run is cleared by its timeout or a cancel.Tests: with
CMUX_OWNED_POOL_BRANCH=feat-cmux-next, test_ci_owned_pool_sources fails on base ae2f00e and passes here (7 tests, none skipped). test_ci_owned_pool_rescue passes.Agent session: agent session
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.Summary by cubic
Fixes the
test_ci_owned_pool_sourcesfailure on feat-cmux-next, red since cmux#30685 madebackend.yml's migrations-push-guard readvars.RUNNER_POOLSwhile main takes no merges to carry the acknowledgement.UNRESCUED_WORKFLOW_PATHSwithbackend.ymlto the branch's rescue copy: no secret, a live pool member, and a stuck run is cleared by its timeout or a cancel.Written for commit 350107e. Summary will update on new commits.