Skip to content

pr-test: schedule 3x -> 2x; fix extra gate skipped on schedule#25872

Merged
hnyls2002 merged 2 commits into
mainfrom
lsyin/extra-schedule-gate
May 20, 2026
Merged

pr-test: schedule 3x -> 2x; fix extra gate skipped on schedule#25872
hnyls2002 merged 2 commits into
mainfrom
lsyin/extra-schedule-gate

Conversation

@hnyls2002

@hnyls2002 hnyls2002 commented May 20, 2026

Copy link
Copy Markdown
Collaborator

Two related changes to the scheduled CI cadence.

1. Reduce schedule frequency from 3x/day to 2x/day

Last 30 scheduled runs of `pr-test.yml`:

Metric Value
`cancelled` 9 / 30 (30%)
Required retry (`attempt > 1`) 10 / 30 (33%)
Median runtime ~6h
Current cadence 8h

Cadence (8h) is barely above runtime (~6h, often pushed past by GHA scheduling delay + GPU queue), so each new scheduled run lands while the previous one is still mid-execution. `concurrency.cancel-in-progress: true` then kills the prior run, wasting GPU runner time and forcing retries.

Between two adjacent 8h slots `main` typically accumulates only a handful of commits — three runs/day end up largely re-validating the same code while consuming a full fresh GPU runner suite each time.

PR push activity by hour (last ~1000 PR runs, UTC):

Hour PR runs/h Slot
01 82 current
09 65 current
17 20 current
11 20 new
23 28 new

New cron `0 11,23 * * *`:

  • 12h cadence comfortably exceeds runtime → 0 overlap, 0 cancel-induced waste
  • Both slots land in low PR-push hours → minimizes contention with developer pushes
  • ~33% fewer scheduled GPU runner hours, plus elimination of retry/cancel waste

2. Fix: `pr-test-extra.yml` whole suite skipped on schedule path

Introduced by #25465: `call-gate` is intentionally skipped on `schedule` (no PR context for label check), but downstream test jobs gate on `needs.call-gate.result == 'success'`, treating `skipped` as failure and skipping the entire extra suite.

Example: https://github.com/sgl-project/sglang/actions/runs/26136273640

Fix: relax downstream `if` to `(success || skipped)` in all extra stage jobs and `sgl-kernel-build-wheels`. `!failure() && !cancelled()` still blocks the PR-path gate-failure case.


CI States

Latest PR Test (Base): ❌ Run #26158094311
Latest PR Test (Extra): ❌ Run #26158094235

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@hnyls2002 hnyls2002 changed the title pr-test-extra: allow gate skipped on schedule pr-test: schedule 3x -> 2x; fix extra gate skipped on schedule May 20, 2026
@hnyls2002 hnyls2002 merged commit eccd5c8 into main May 20, 2026
63 of 68 checks passed
@hnyls2002 hnyls2002 deleted the lsyin/extra-schedule-gate branch May 20, 2026 10:58
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.

1 participant