From ddf5febdb3072425442ef375ca0be63fbe09e7f1 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 2 Oct 2026 16:44:57 +0000 Subject: [PATCH] ci: keep every runner off the default E2E ports Branches that still free the fixed ports 3110, 3111, 5180 and 4321 keep running on the shared host (main, the nightly run, other open PRs) until they carry the per-runner ports. A job of ours on the runner without a numeric suffix used exactly those defaults, so such a neighbour could still kill it, and its own port freeing could kill the neighbour. The unsuffixed runner now starts at offset 100, so no job from this workflow touches the defaults in either direction. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u --- .github/workflows/playwright.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml index 24ee373..25756e7 100644 --- a/.github/workflows/playwright.yml +++ b/.github/workflows/playwright.yml @@ -113,11 +113,13 @@ jobs: run: test -n "$BOX_API_KEY" - name: Pick E2E ports for this runner # Several runners share one host. Each runner gets its own port set so the - # port-freeing steps and the harness never touch another job's servers. + # port-freeing steps and the harness never touch another job's servers. No runner + # uses the harness defaults: jobs from branches that still free the fixed ports + # cannot kill ours, and we cannot kill theirs. run: | set -euo pipefail suffix="${RUNNER_NAME##*-}" - offset=0 + offset=100 if [[ "$suffix" =~ ^[0-9]+$ ]]; then offset=$((suffix * 100)) fi