ci: take Build off the integration shard critical path (#648)

Build listed six test jobs in `needs` but only reads `needs.changes.outputs.code`, in its `if`. The rest were ordering, not data.

That queued a 55s job behind the slowest integration shard, so it added its full runtime to the tail of every green run. Build and the test jobs are independent required checks, so a green Build still can't merge past a red shard.
This commit is contained in:
SnapOtter
2026-07-26 23:12:21 +08:00
committed by GitHub
parent 2848dd0e53
commit ada5727114
+6 -10
View File
@@ -414,16 +414,12 @@ jobs:
build: build:
name: Build name: Build
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: # Only `changes` is a real dependency (its output gates the `if` below).
[ # Gating on the test jobs used to save a runner minute on red PRs, but it
changes, # put a 55s job behind the slowest integration shard and added that time to
lint, # every green run. Build and the test jobs are independent required checks,
typecheck, # so a green Build still can't merge past a red shard.
test-unit, needs: [changes]
test-integration,
test-e2e-smoke,
test-e2e-mobile-smoke,
]
if: needs.changes.outputs.code == 'true' if: needs.changes.outputs.code == 'true'
steps: steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0