Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 12 additions & 1 deletion .github/workflows/deps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -237,9 +237,20 @@ jobs:
run: |
gh label create deps-ready --color 0E8A16 --description 'Green; a runtime minor or a Playwright bump waiting for the deps lane' 2>/dev/null || true
gh pr edit "${{ github.event.pull_request.number }}" --add-label deps-ready

# its own job: turning auto-merge on needs contents: write, which the gate (it checks out and runs the PR's
# code) should not hold. No checkout here; it only runs after a green deps-gate.
automerge:
needs: [scope, gate]
if: needs.scope.outputs.cls == 'auto' && github.base_ref == 'deps'
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- name: auto-merge
if: needs.scope.outputs.cls == 'auto' && github.base_ref == 'deps'
env:
GH_TOKEN: ${{ github.token }}
GH_REPO: ${{ github.repository }}
# waits for whatever the ruleset still wants (pc-battery from the desktop for a runtime patch)
run: gh pr merge "${{ github.event.pull_request.number }}" --auto --squash
3 changes: 2 additions & 1 deletion scripts/ci/battery.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,8 @@ async function run(argv) {
// loaded shard fails the same suite twice), and a shard without retries stays inside its estimate
const retry = set === 'confirm' || argv.includes('--retry');
// past the deadline no suite starts: the rest report `notrun` instead of the job being killed with nothing said
const deadline = Date.now() + Number(opt(argv, '--deadline') || 0) * 60000 || Infinity;
const dl = Number(opt(argv, '--deadline') || 0);
const deadline = dl ? Date.now() + dl * 60000 : Infinity;
const save = () => fs.writeFileSync(path.join(out, `${set === 'confirm' ? 'confirm' : 'results'}-${shard}.json`), JSON.stringify({ shard, of, set, results }, null, 1));
console.log(`shard ${shard}/${of}: ${mine.length} suites, est ${Math.round(mine.reduce((t, s) => t + (b.suites[s] || 60), 0) / 60)} min, ${par} at a time`);
/** @type {Promise<any> | null} */
Expand Down
3 changes: 3 additions & 0 deletions tests/e2e/battery.json
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
"drawer-layering": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
"edit-move-games": "red on the unchanged base too (deps-1 A/B on 1f3b9dd5, 2026-10-23)",
"editor-modes": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
"env-preset-broadcast": "flaky on the GitHub runner (SwiftShader): red on its shard in deps-auto runs 10, 12 and 13 (green on confirm), 2026-10-25; a two-peer broadcast check like knock-physics",
"environment": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
"explorer-drop": "flaky on the GitHub runner (SwiftShader): red or green-on-retry in deps-auto run 5 or 6 with unchanged code, 2026-10-24",
"explorer-header-panels": "red on the GitHub runner in deps-auto run 7 or 8 after a retry / the fresh-runner confirm, unchanged code (two-peer replication stalls on SwiftShader), 2026-10-24",
Expand Down Expand Up @@ -105,6 +106,7 @@
"kit-core": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
"kit-instancing": "red on the unchanged base too (deps-1 A/B on 1f3b9dd5, 2026-10-23)",
"knock-node": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
"knock-physics": "flaky on the GitHub runner (SwiftShader), about half its shards red since deps-auto run 8 (8, 9, 12, 14, 17), red on both confirm tries in run 17, 2026-10-25: \"2.3 (premise) B sees the ball parked\"",
"lock-dragrow": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
"lock-dragrow-sync": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
"lock-panels": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
Expand Down Expand Up @@ -163,6 +165,7 @@
"scatter-edit": "red on the GitHub runner (SwiftShader) on released 1.43.2 code: deps-auto run 12 (shard; green on confirm) and run 13 (shard + both confirm tries), 2026-10-25 (peer B never gets the terrain)",
"scatter-select": "red on the GitHub runner (SwiftShader) twice, its shard + a fresh confirm runner, on released 1.43.2 code: deps-auto run 12, 2026-10-25 (peer B never gets the terrain)",
"scatter-sources": "red on the GitHub runner (SwiftShader) twice, its shard + a fresh confirm runner, on released 1.43.2 code: deps-auto run 12, 2026-10-25 (600 s suite timeout, all checks reached green)",
"scatter-surface": "red on the GitHub runner (SwiftShader) on its shard in deps-auto runs 13, 14 and 16 (green on confirm in 13/14, red on both confirm tries in 16), 2026-10-25: the Add scatter click times out (locator.click 30 s), not the terrain race",
"scene-budget": "red on the unchanged base too (deps-1 A/B on 1f3b9dd5, 2026-10-23)",
"scene-open-guard": "flaky on the GitHub runner (SwiftShader): red or green-on-retry in deps-auto run 5 or 6 with unchanged code, 2026-10-24",
"scene-physics-state": "red on the GitHub runner (SwiftShader, no retry) with unchanged code: deps-auto run 5, 2026-10-24",
Expand Down
Loading