From 582c66214d1468cf36867f1f656d5bacbc377775 Mon Sep 17 00:00:00 2001 From: Brent Swisher Date: Fri, 5 Jun 2026 11:32:48 -0400 Subject: [PATCH 1/5] ci: add timeout-minutes setting for all jobs --- .github/workflows/chromatic.yml | 1 + .github/workflows/release.yml | 1 + .github/workflows/size-limit.yml | 1 + .github/workflows/verify.yml | 2 ++ 4 files changed, 5 insertions(+) diff --git a/.github/workflows/chromatic.yml b/.github/workflows/chromatic.yml index 10095e63b..f7aab4f50 100644 --- a/.github/workflows/chromatic.yml +++ b/.github/workflows/chromatic.yml @@ -21,6 +21,7 @@ jobs: chromatic: name: Chromatic runs-on: ubuntu-latest + timeout-minutes: 5 steps: - name: Checkout Repo (Push) if: github.event_name == 'push' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 213c389a8..997dd14e0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -16,6 +16,7 @@ jobs: if: github.repository == 'ithaka/pharos' name: Release runs-on: ubuntu-latest + timeout-minutes: 30 steps: - name: Checkout Repo uses: actions/checkout@v6 diff --git a/.github/workflows/size-limit.yml b/.github/workflows/size-limit.yml index 7f2c9d21a..caee41135 100644 --- a/.github/workflows/size-limit.yml +++ b/.github/workflows/size-limit.yml @@ -8,6 +8,7 @@ on: jobs: size: runs-on: ubuntu-latest + timeout-minutes: 5 env: CI_JOB_NUMBER: 1 steps: diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml index cee8179bb..f1087d73e 100644 --- a/.github/workflows/verify.yml +++ b/.github/workflows/verify.yml @@ -10,6 +10,7 @@ jobs: lint: name: Lint runs-on: ubuntu-latest + timeout-minutes: 5 steps: - uses: actions/checkout@v6 @@ -41,6 +42,7 @@ jobs: test: name: Test runs-on: ubuntu-latest + timeout-minutes: 20 steps: - uses: actions/checkout@v6 From 8dc171f6eb21cf8fe55cf953120096b369722d2b Mon Sep 17 00:00:00 2001 From: Brent Swisher Date: Fri, 5 Jun 2026 11:42:02 -0400 Subject: [PATCH 2/5] ci: add per-branch concurrency control to verify and chromatic --- .github/workflows/chromatic.yml | 4 ++++ .github/workflows/verify.yml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/.github/workflows/chromatic.yml b/.github/workflows/chromatic.yml index f7aab4f50..9af2df0b1 100644 --- a/.github/workflows/chromatic.yml +++ b/.github/workflows/chromatic.yml @@ -17,6 +17,10 @@ on: required: true type: string +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: chromatic: name: Chromatic diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml index f1087d73e..2eeea0ee1 100644 --- a/.github/workflows/verify.yml +++ b/.github/workflows/verify.yml @@ -6,6 +6,10 @@ on: branches: - develop +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: lint: name: Lint From 15c3a9299af42b5dbeccd83c4e7acdd943031923 Mon Sep 17 00:00:00 2001 From: Brent Swisher Date: Fri, 5 Jun 2026 11:43:05 -0400 Subject: [PATCH 3/5] ci: add per-branch concurrency control to size-limit --- .github/workflows/size-limit.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/size-limit.yml b/.github/workflows/size-limit.yml index caee41135..b3dffd50c 100644 --- a/.github/workflows/size-limit.yml +++ b/.github/workflows/size-limit.yml @@ -5,6 +5,10 @@ on: branches: - develop +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: size: runs-on: ubuntu-latest From b22f90439ff0c3ce91a5fabcdb786f8e25c7c973 Mon Sep 17 00:00:00 2001 From: Brent Swisher Date: Fri, 5 Jun 2026 11:56:53 -0400 Subject: [PATCH 4/5] ci: add Playwright browser caching --- .github/workflows/verify.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml index 2eeea0ee1..40c965572 100644 --- a/.github/workflows/verify.yml +++ b/.github/workflows/verify.yml @@ -72,11 +72,15 @@ jobs: - name: Install Dependencies run: yarn --check-cache --immutable - - name: Install Browsers - run: npx playwright install + - name: Cache Playwright browsers + uses: actions/cache@v5 + id: playwright-cache + with: + path: ~/.cache/ms-playwright + key: ${{ runner.os }}-playwright-${{ hashFiles('**/yarn.lock') }} - - name: Install Browsers Dependencies - run: npx playwright install-deps + - name: Install Browsers + run: npx playwright install --with-deps chromium firefox webkit # --with-deps needed as OS libs aren't cached just the browsers - name: Test run: yarn test From 8979c5cdbe67821f1c8ea4ae33ef9c29b09850f5 Mon Sep 17 00:00:00 2001 From: Brent Swisher Date: Fri, 5 Jun 2026 12:07:12 -0400 Subject: [PATCH 5/5] ci: an empty test commit