Parent: #1936
Problem
The changes (path-filter) and validate (result-aggregation) jobs in .github/workflows/ci.yml are routed onto the self-hosted [self-hosted, gittensory] pool for same-repo PRs despite doing no build/test work, adding two more self-hosted slots per PR ahead of and after the one job that actually needs the VPS.
changes is just actions/checkout + git diff --check + dorny/paths-filter — it runs first and its own output decides whether validate-code needs to run at all, so gating it behind the same contended self-hosted queue it's meant to protect is circular (a busy self-hosted pool delays even discovering that a doc-only PR needs no heavy job). validate only reads needs.*.result and echoes a pass/fail message (2-minute timeout) yet still requests a self-hosted slot. Neither job touches node_modules, Docker, or anything the self-hosted VPS caching benefits.
Fix
Route changes and validate unconditionally to ubuntu-latest; only validate-code (the job that actually reuses the cached node_modules/toolchain) needs to stay on [self-hosted, gittensory].
Verification
Parent: #1936
Problem
The
changes(path-filter) andvalidate(result-aggregation) jobs in.github/workflows/ci.ymlare routed onto the self-hosted[self-hosted, gittensory]pool for same-repo PRs despite doing no build/test work, adding two more self-hosted slots per PR ahead of and after the one job that actually needs the VPS.changesis justactions/checkout+git diff --check+dorny/paths-filter— it runs first and its own output decides whethervalidate-codeneeds to run at all, so gating it behind the same contended self-hosted queue it's meant to protect is circular (a busy self-hosted pool delays even discovering that a doc-only PR needs no heavy job).validateonly readsneeds.*.resultand echoes a pass/fail message (2-minute timeout) yet still requests a self-hosted slot. Neither job touchesnode_modules, Docker, or anything the self-hosted VPS caching benefits.Fix
Route
changesandvalidateunconditionally toubuntu-latest; onlyvalidate-code(the job that actually reuses the cachednode_modules/toolchain) needs to stay on[self-hosted, gittensory].Verification
changes/validatejob config against.github/workflows/ci.yml(line numbers may have shifted).changes/validatenow run onubuntu-latest,validate-codestill runs self-hosted, and the overall gate result is unchanged.