From 35dc9ab21e9a47d9f1086bd637e6219f868c4115 Mon Sep 17 00:00:00 2001 From: ALF <263217947+askalf@users.noreply.github.com> Date: Sun, 1 Nov 2026 18:34:28 -0500 Subject: [PATCH 1/3] fleet status: run on the fleet-status read row, off the exec cap --- .github/workflows/fleet-status.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/fleet-status.yml b/.github/workflows/fleet-status.yml index dea7382..1df3f6e 100644 --- a/.github/workflows/fleet-status.yml +++ b/.github/workflows/fleet-status.yml @@ -55,11 +55,12 @@ jobs: github.event.workflow_run.head_repository.full_name != github.repository))) || (github.event_name != 'issue_comment' && github.event_name != 'workflow_run' && github.event.pull_request.head.repo.full_name == github.repository) - # On our runner for every event here, a fork PR's included: the job runs the pinned fleet-status - # action and never PR code (see above), so GitHub's hosted queue going down does not hold the - # fleet/verify and fleet/review statuses a merge waits on. A fork repository has no - # truecopy-exec runners, so there it runs on GitHub's. - runs-on: ${{ github.repository == 'askalf/truecopy' && fromJSON('["self-hosted","truecopy-exec"]') || 'ubuntu-latest' }} + # On our runner for every event, a fork's included: the job runs the pinned fleet-status action + # and never PR code (see above), so GitHub's hosted queue going down does not hold the fleet/verify + # and fleet/review statuses a merge waits on. The runner is this repository's fleet status row + # (label fleet-status), a read-tier row: this few-second job holds no exec cap slot that a test + # job waits for. A fork repository has no fleet-status runners, so there it runs on GitHub's. + runs-on: ${{ github.repository == 'askalf/truecopy' && fromJSON('["self-hosted","fleet-status"]') || 'ubuntu-latest' }} timeout-minutes: 5 permissions: contents: read From 5bfc0fc8f4724cafd693ea24b37aa65826e06faa Mon Sep 17 00:00:00 2001 From: ALF <263217947+askalf@users.noreply.github.com> Date: Sun, 1 Nov 2026 18:34:30 -0500 Subject: [PATCH 2/3] fleet status: bump fleet-status-check to askalf/ci@8b4fc27, which accepts the fleet-status row --- .github/workflows/fleet-status-self-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/fleet-status-self-test.yml b/.github/workflows/fleet-status-self-test.yml index 9a698ed..a3dc2c0 100644 --- a/.github/workflows/fleet-status-self-test.yml +++ b/.github/workflows/fleet-status-self-test.yml @@ -30,7 +30,7 @@ jobs: with: persist-credentials: false - - uses: askalf/ci/actions/fleet-status-check@4365d12f956b60e795b5b55451e2035549a3600c # main 2026-11-01, askalf/ci#153 + - uses: askalf/ci/actions/fleet-status-check@8b4fc27416783ad2528fe29086b3df4f85005673 # main 2026-11-01, askalf/ci#156 with: min-own-exprs: '5' repo-only: fleet-status.yml fleet-status-backfill.yml marketplace-watch.yml From d8e14971a9c5e6845d965b30183a13551322155e Mon Sep 17 00:00:00 2001 From: ALF <263217947+askalf@users.noreply.github.com> Date: Sun, 1 Nov 2026 18:34:34 -0500 Subject: [PATCH 3/3] actionlint: know the fleet-status runner label --- .github/actionlint.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/actionlint.yaml b/.github/actionlint.yaml index cd9183b..4dcd67f 100644 --- a/.github/actionlint.yaml +++ b/.github/actionlint.yaml @@ -2,3 +2,5 @@ self-hosted-runner: labels: # non-root ephemeral exec runner for our own code - truecopy-exec + # read-tier runner for the fleet status job, outside the exec cap + - fleet-status