Skip to content

ci: run macOS budget/eval beside Test whenever the Mac leg is hosted - #6461

Merged
Hmbown merged 1 commit into
mainfrom
ci/hosted-macos-when-self-hosted-off
Sep 24, 2026
Merged

Hmbown merged 1 commit into
mainfrom
ci/hosted-macos-when-self-hosted-off

Conversation

@Hmbown

@Hmbown Hmbown commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner

Refs #6458

Makes the CW_SELF_HOSTED_MAC kill switch safe to turn off.

Problem. The single self-hosted runner codewhale-mac serializes 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, Test alone took 77–80 min (#6431, #6417), so those two steps would pass the 90-minute limit.

Change.

  • The RSS/eval steps inside Test now run only when the leg is actually self-hosted: trusted event and CW_SELF_HOSTED_MAC == 'true'.
  • macos-budget runs in every other heavy case. Its name, and therefore its check context, is unchanged.
  • Test timeout 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

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>
Copilot AI lite review requested due to automatic review settings September 24, 2026 00:37

Copilot AI 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.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-24T00:39:34.885972Z 4da3130 PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@Hmbown
Hmbown merged commit 26b3fad into main Sep 24, 2026
41 of 50 checks passed
@Hmbown
Hmbown deleted the ci/hosted-macos-when-self-hosted-off branch September 24, 2026 01:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants