Skip to content

ci: run macOS tests only post-merge (push event)#1048

Draft
harsha-simhadri wants to merge 1 commit into
mainfrom
harshasi/run-macos-ci-after-pr
Draft

ci: run macOS tests only post-merge (push event)#1048
harsha-simhadri wants to merge 1 commit into
mainfrom
harshasi/run-macos-ci-after-pr

Conversation

@harsha-simhadri
Copy link
Copy Markdown
Contributor

Move macOS runners out of the PR matrix for test-workspace and test-workspace-features jobs. macOS is now included only on push events (after merge to main), similar to the existing miri job pattern.

Move macOS runners out of the PR matrix for test-workspace and
test-workspace-features jobs. macOS is now included only on push
events (after merge to main), similar to the existing miri job pattern.

This speeds up PR feedback without losing macOS coverage.

Ref: #1012 (comment)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the CI workflow to avoid running macOS test jobs on pull_request events, while still running them on push to main (i.e., post-merge). This aligns the test matrix behavior with the existing pattern used by the miri job, reducing PR queue time and macOS runner contention.

Changes:

  • Updated test-workspace matrix to include macos-latest only for push events.
  • Updated test-workspace-features matrix to include macos-latest only for push events.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@codecov-commenter
Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.47%. Comparing base (3d3ed4c) to head (5e88227).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #1048      +/-   ##
==========================================
- Coverage   90.60%   89.47%   -1.13%     
==========================================
  Files         461      461              
  Lines       85494    85494              
==========================================
- Hits        77462    76498     -964     
- Misses       8032     8996     +964     
Flag Coverage Δ
miri 89.47% <ø> (-1.13%) ⬇️
unittests 89.32% <ø> (-1.25%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 40 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Comment thread .github/workflows/ci.yml
- ubuntu-24.04-arm
- macos-latest
# Include macOS only on push (post-merge) to avoid slowing down PR checks.
os: ${{ github.event_name == 'push' && fromJSON('["windows-latest","ubuntu-latest","ubuntu-24.04-arm","macos-latest"]') || fromJSON('["windows-latest","ubuntu-latest","ubuntu-24.04-arm"]') }}
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Mark, nested conditionals dont work on github CI. so back to ternary

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.

I don't like this kind of incremental complexity. IMO, adding incremental changes like this will eventually make it quite hard to reason about CI.

Is it worth instead having a second CI step for post-merge operations rather than trying to do everything in ci.yml.

Additionally, I currently don't receive any kind of notification for post-merge failures, and our post-merge miri job takes a whopping 45 minutes. Should we instead move to a nightly run and lump everything there?

By big concerns are:

  • Keeping ci.yml straight forward.
  • Ensuring post merge jobs generate signal.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@arrayka are you ok with moving miri to nightly. I can send PR for that

@harsha-simhadri harsha-simhadri marked this pull request as draft May 11, 2026 19:34
@harsha-simhadri harsha-simhadri marked this pull request as draft May 11, 2026 19:34
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.

6 participants