From 0cff615eb6a51d8fa1a1ca6e8fb3f75991da762d Mon Sep 17 00:00:00 2001 From: Ahmet Cangir Date: Sat, 10 Oct 2026 01:59:07 +0200 Subject: [PATCH] ci: allow release checks a 90-minute job budget --- .github/workflows/npm-publish.yml | 9 ++++----- .github/workflows/ui-ci.yml | 9 ++++----- tests/test_package.py | 4 ++-- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/.github/workflows/npm-publish.yml b/.github/workflows/npm-publish.yml index 2c381170..20b71ebb 100644 --- a/.github/workflows/npm-publish.yml +++ b/.github/workflows/npm-publish.yml @@ -23,11 +23,10 @@ jobs: publish: name: publish runs-on: ubuntu-latest - # Same release-tier runner as ui-ci.yml: setup, browser install, full - # discovery, package verification, and rehearsal can exceed the old - # 25-minute budget on a cold hosted runner, so publish must wait for a real - # pass/fail gate instead of a timeout. - timeout-minutes: 45 + # Use the same release-tier budget as UI CI. Full discovery alone reached + # 44 minutes; setup, build, package verification and rehearsal need room + # to finish before publishing. + timeout-minutes: 90 steps: - name: Check out repository diff --git a/.github/workflows/ui-ci.yml b/.github/workflows/ui-ci.yml index 6e32c485..ec96f2fa 100644 --- a/.github/workflows/ui-ci.yml +++ b/.github/workflows/ui-ci.yml @@ -33,11 +33,10 @@ jobs: ui-tests: name: ui-tests runs-on: ubuntu-latest - # Release-tier runs can exceed 25 minutes on a cold hosted runner once setup, - # browser install, full discovery, package verification, and rehearsal are - # included. Keep dev pushes capped below release, but give PR/main release - # audits enough room to finish with an actual pass/fail result. - timeout-minutes: 45 + # Full discovery alone reached 44 minutes on a hosted runner. Leave room + # for setup, browser installation, build, package verification and rehearsal + # so release-tier runs can finish with an actual pass/fail result. + timeout-minutes: 90 steps: - name: Check out repository diff --git a/tests/test_package.py b/tests/test_package.py index 20c1c4be..6d9cca35 100644 --- a/tests/test_package.py +++ b/tests/test_package.py @@ -1091,7 +1091,7 @@ def test_ci_keeps_ui_tests_name_and_runs_selected_tier(self) -> None: ) self.assertIn(" ui-tests:\n name: ui-tests", workflow) - self.assertIn("timeout-minutes: 45", workflow) + self.assertIn("timeout-minutes: 90", workflow) self.assertIn("Select test tier", workflow) self.assertIn("scripts/run-test-tier.py resolve", workflow) self.assertIn("steps.test-tier.outputs.needs_playwright == 'true'", workflow) @@ -1118,7 +1118,7 @@ def test_publish_workflow_uses_release_test_gate(self) -> None: ) self.assertIn("Run release test gate", workflow) - self.assertIn("timeout-minutes: 45", workflow) + self.assertIn("timeout-minutes: 90", workflow) self.assertIn("python scripts/run-test-tier.py run release", workflow) def test_alias_package_is_not_part_of_root_install(self) -> None: