Repository navigation
ci(build): skip test jobs a push to main does not touch, and duplicate relinker hosts - #5228
Conversation
MarcZX10
left a comment
There was a problem hiding this comment.
I found one current-main behavior to preserve before merge. This PR is based on c422b57, while current main has advanced to bf8dc61. Since this branch was created, .github/workflows/build.yml gained a workflow_dispatch boolean input linux (default true), and the Linux job honors it with inputs.linux. This PR removes that guard, so a manual run that explicitly sets linux: false would still run Linux. Please rebase/update on current main and retain the input guard while applying the push-path filtering. The current PR checks pass, but they ran before this newer manual-run behavior was added.
23be61a to
958231f
Compare
|
@MarcZX100 Thanks. Rebased onto The new input did interact with this PR in one place, fixed in Checked the same way as before. I ran the gate script under Node against mocked contexts: the nine earlier cases are unchanged, a manual build with |
MarcZX10
left a comment
There was a problem hiding this comment.
Thanks for preserving the current workflow_dispatch Linux guard and keeping the Linux relinker host for manual runs with linux: false. I verified the updated host-selection logic and the current checks now pass across Linux, Windows, and macOS relinker jobs, plus the register-context and write-watch jobs. The Linux and Windows full-build jobs are intentionally skipped by this manual run. The original review concern is resolved.
…e relinker hosts A push to main ran every job: relinker on three hosts, register context on four and write watch on two, next to the full Linux and Windows builds. The eligibility gate now reads the files of the push (compare before...after) and applies the same path rules as pull requests; when it cannot (a first push, 300 or more files, an API error) every job runs as before. Whenever the full builds run (push and manual builds), the Linux and Windows relinker jobs repeat tests the full builds already run: the relinker-only ctest lists (150 and 145 tests) are subsets of the full Linux and Windows ones (1052 and 1069) in run 38397922579. The relinker matrix now keeps only macOS then; automatic pull request builds, which have no full build, still run all three. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
958231f to
c692334
Compare
|
Rebased onto current |
What
Closes #5227.
main: the eligibility gate reads the files of the push (compareCommitsWithBasehead,before...after) and applies the path rules that pull requests already use to relinker, register context and write watch. It falls back to running every job when it can't list the files: the first push of the branch, 300 or more files (the compare API's limit), or an API error, which is logged as a warning. The full Linux and Windows builds still run on every push.relinker-hostsoutput feeds the relinker matrix. When the full builds run (push and manual builds), only macOS remains, because the Linux and Windows relinker tests are subsets of the full builds' tests (see CI: a push to main runs every test job, and the Linux/Windows relinker jobs repeat tests the full builds run #5227). A manual build with thelinuxinput off has no full Linux build, so the Linux relinker job stays in it. Automatic pull request builds, which have no full build, keep all three hosts.select()helper that both branches use, and are unchanged for pull requests.Tested
node --checkon the gate script, and a local harness that runs it against a mockedcontext/github. It produces these outputs:linux: falsemain:main) ran every test job, with the relinker matrix reduced to macOS.Checklist
main; no other open PR implements the same functions (fix(agc): start the shader preparation threads at the first job #5196 edits a different line of this file)NotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)