ci: run macOS budget/eval beside Test whenever the Mac leg is hosted - #6461
Merged
Merged
Conversation
The RSS budget and offline eval ran inside Test for every trusted event, assuming the warm self-hosted Mac. With CW_SELF_HOSTED_MAC off, a trusted PR's macOS leg is a cold GitHub-hosted Mac, where Test alone took 77-80 minutes on 2026-09-23 (#6431, #6417) and the two extra steps would pass the 90-minute limit. Route both steps by runner, not trust: inside Test only on the self-hosted Mac, otherwise in the parallel macos-budget job. Raise Test's timeout to 120 minutes for cold hosted Macs. This makes the existing kill switch safe to use: the single self-hosted runner had 14 queued runs and dropped jobs with "lost communication". Verification: actionlint with CI's flags (-ignore SC2129/SC2221/SC2222) clean. No tests run; workflow-only change, CI is the proof. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
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.
Refs #6458
Makes the
CW_SELF_HOSTED_MACkill switch safe to turn off.Problem. The single self-hosted runner
codewhale-macserializes every trusted PR's macOS leg: 14 runs queued on 2026-09-23. At least 7 PRs (#6439, #6441, #6443, #6445, #6446, #6452, #6457) failed with "The self-hosted runner lost communication with the server". That is an infrastructure failure, not a code failure. Public-repo hosted Macs are free and run in parallel.Why the variable alone wasn't enough. Trusted events ran the persistence-backlog RSS budget and the offline eval inside
Test (macos-latest), on the assumption of a warm self-hosted build. On a cold hosted Mac,Testalone took 77–80 min (#6431, #6417), so those two steps would pass the 90-minute limit.Change.
Testnow run only when the leg is actually self-hosted: trusted event andCW_SELF_HOSTED_MAC == 'true'.macos-budgetruns in every other heavy case. Its name, and therefore its check context, is unchanged.Testtimeout goes from 90 to 120 min.Coverage is identical in both modes: every heavy run executes the RSS budget and the eval exactly once on macOS.
Verification. actionlint with CI's flags is clean. This is workflow-only; this PR's own run exercises it.
🤖 Generated with Claude Code