Skip to content

Commit ed0f310

Browse files
ci(consolidation): budget the cold n0 link
Run 29699083578 proved the n0 job timeout was build topology, not renderer output: n0_dev completed its cold release build in 16m24s, then cargo selected a second skia-bindings graph for gate and was cancelled 12m40s later at the 30-minute job ceiling. The candidate and upload steps never ran, and the interrupted cache save failed. Build n0_dev and gate in one Cargo invocation so their features resolve once, execute the resulting gate binary directly, and retain a 45-minute cold-host ceiling. The fail-closed sequence is unchanged: an unblessed failure may produce a complete review-only candidate, then the job remains red until that candidate is deliberately adopted. Gate evidence: the exact combined release build passes locally; direct non-owner gate execution passes shots, replay, differential, cache, and timing paths; YAML parsing and git diff checks pass. Frozen format and published package surfaces remain untouched.
1 parent c34c6c4 commit ed0f310

1 file changed

Lines changed: 8 additions & 7 deletions

File tree

.github/workflows/consolidation-gates.yml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ jobs:
213213
needs: scope
214214
if: needs.scope.outputs.engine == 'true'
215215
runs-on: ubuntu-24.04
216-
timeout-minutes: 30
216+
timeout-minutes: 45
217217
env:
218218
FORCE_SKIA_BINARIES_DOWNLOAD: "1"
219219
N0_GATE_HOST_ID: github-actions-ubuntu-24.04-x86_64
@@ -271,21 +271,22 @@ jobs:
271271
cache-workspace-crates: true
272272
cache-on-failure: true
273273

274-
- name: Build the shot host
275-
run: cargo build --locked --release -p n0_dev
274+
- name: Build the shot host and gate together
275+
run: >-
276+
cargo build --locked --release
277+
-p n0_dev -p n0
278+
--bin n0_dev --bin gate
276279
277280
- name: Run the n0 gate
278281
id: gate
279282
continue-on-error: true
280-
run: cargo run --locked --release -p n0 --bin gate
283+
run: target/release/gate
281284

282285
- name: Produce a review-only baseline candidate
283286
if: steps.gate.outcome == 'failure'
284287
id: candidate
285288
continue-on-error: true
286-
run: >-
287-
cargo run --locked --release -p n0 --bin gate --
288-
--bless-shots --bless-bench
289+
run: target/release/gate --bless-shots --bless-bench
289290

290291
- name: Upload the review-only baseline candidate
291292
if: >-

0 commit comments

Comments
 (0)