Skip to content

ci(audience): trim playmode PR to 8 cells, add weekly 12-cell run (SDK-327)#746

Merged
ImmutableJeffrey merged 1 commit into
mainfrom
ci/audience-pr-fast-weekly-full
May 7, 2026
Merged

ci(audience): trim playmode PR to 8 cells, add weekly 12-cell run (SDK-327)#746
ImmutableJeffrey merged 1 commit into
mainfrom
ci/audience-pr-fast-weekly-full

Conversation

@ImmutableJeffrey
Copy link
Copy Markdown
Collaborator

@ImmutableJeffrey ImmutableJeffrey commented May 7, 2026

Summary

  • Trims playmode PR matrix from 12 to 8 cells; drops Unity 2022.3.62f2 from PR runs.
  • Adds on: schedule (Sat 14:00 UTC = Sun 00:00 Sydney AEST in winter, Sun 01:00 AEDT in summer) so the full 12-cell matrix runs weekly on the default branch.
  • workflow_dispatch continues to fire the full matrix on demand.
  • Restructures the playmode matrix from a flat 12-entry include list to cross-product axes (unity x target x backend) plus include entries that supply changeset by unity and runner by target.
  • matrix.exclude is set conditionally via fromJSON, so only PR runs drop the 2022 cells. Single job, no duplicated steps.
  • Tidies the mobile-build matrix to the same cross-product shape (target x unity, method added by target via include). Same 6 cells, same behaviour.

Linear: SDK-327


Note

Medium Risk
Changes CI matrix logic and trigger conditions, which could unintentionally reduce test coverage on PRs or misconfigure scheduled runs if the matrix/exclude expressions are wrong.

Overview
Adds a weekly schedule trigger to run the full PlayMode test matrix on the default branch, while keeping workflow_dispatch for on-demand full runs.

Restructures the PlayMode matrix into cross-product axes (unity/target/backend) with include entries for changeset and per-target runners, and conditionally excludes Unity 2022.3.62f2 on pull_request to trim PR runs.

Simplifies the mobile-build job matrix to the same cross-product shape (target × unity) while preserving the same build methods and overall behavior.

Reviewed by Cursor Bugbot for commit 69a42d3. Bugbot is set up for automated code reviews on this repo. Configure here.

…K-327)

- Trims playmode PR matrix from 12 to 8 cells.
- Keeps Unity 2021.3.45f2 (LTS floor) and 6000.4.0f1 (current major) on every PR.
- Drops Unity 2022.3.62f2 from PR runs.
- Retains both backends (IL2CPP, Mono2x) and both targets (Windows, macOS) per Unity version.
- Adds weekly schedule trigger (cron '0 14 * * 6') so the full 12-cell matrix runs on the
  default branch. Saturday 14:00 UTC maps to Sunday 00:00 Sydney AEST in winter,
  Sunday 01:00 AEDT in summer.
- Keeps workflow_dispatch as the on-demand path for the full matrix.
- Restructures playmode matrix from a flat 12-entry include list to cross-product axes
  (unity x target x backend), with include entries supplying changeset by unity and
  runner by target.
- Sets matrix.exclude conditionally via fromJSON so only PR runs drop the 2022 cells.
- One job, steps unchanged.
- Collapses mobile-build matrix to the same cross-product shape (target x unity) with
  method added by target via include. Cell list and behaviour unchanged.
- Single self-hosted Windows runner serializes 6 Windows cells per PR.
- Cut is expected to drop PR runner-hold from ~120 min to ~80 min.
- Unity 2022 LTS coverage on every PR remains via the mobile-build job (Android + iOS).

Linear: https://linear.app/imtbl/issue/SDK-327

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@ImmutableJeffrey ImmutableJeffrey force-pushed the ci/audience-pr-fast-weekly-full branch from 8884fd5 to 69a42d3 Compare May 7, 2026 02:18
@ImmutableJeffrey ImmutableJeffrey marked this pull request as ready for review May 7, 2026 03:20
@ImmutableJeffrey ImmutableJeffrey requested review from a team as code owners May 7, 2026 03:20
@ImmutableJeffrey ImmutableJeffrey merged commit 0495c1b into main May 7, 2026
26 checks passed
@ImmutableJeffrey ImmutableJeffrey deleted the ci/audience-pr-fast-weekly-full branch May 7, 2026 03:20
Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 69a42d3. Configure here.

strategy:
fail-fast: false
matrix:
target: [Android, iOS]
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

mobile-build if not updated for new schedule trigger

Low Severity

The playmode job's if was explicitly updated to handle the new schedule event, but the mobile-build job's if was not. On schedule events, github.event.pull_request.head.repo.fork is null, and GitHub Actions coerces null == false to true (both become 0), so mobile-build silently runs every week. If this is intended, the condition is fragile and inconsistent with the playmode guard; if unintended, it wastes six extra CI cells weekly.

Additional Locations (2)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 69a42d3. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants