diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1e87c5bc7bd1..c0b0836170dd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1589,7 +1589,9 @@ jobs: name: checks-ui needs: [preflight] if: needs.preflight.outputs.run_ui_tests == 'true' - runs-on: ${{ (vars.OPENCLAW_CI_RUNNER_BACKEND == 'github' || vars.OPENCLAW_CI_RUNNER_BACKEND == 'hybrid') && 'ubuntu-24.04' || github.event_name == 'workflow_dispatch' && 'ubuntu-24.04' || (github.repository == 'openclaw/openclaw' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == 'openclaw/openclaw') && 'blacksmith-4vcpu-ubuntu-2404' || 'ubuntu-24.04') }} + # Measured 177s body on hosted 4-core (run 31861511624); hybrid attempt 1 + # rides the 8 vCPU class like the ui-e2e shards, retries stay hosted. + runs-on: ${{ vars.OPENCLAW_CI_RUNNER_BACKEND == 'github' && 'ubuntu-24.04' || (vars.OPENCLAW_CI_RUNNER_BACKEND == 'hybrid' && github.run_attempt > 1) && 'ubuntu-24.04' || github.event_name == 'workflow_dispatch' && 'ubuntu-24.04' || (vars.OPENCLAW_CI_RUNNER_BACKEND == 'hybrid' && github.repository == 'openclaw/openclaw' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == 'openclaw/openclaw') && 'blacksmith-8vcpu-ubuntu-2404' || (github.repository == 'openclaw/openclaw' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == 'openclaw/openclaw') && 'blacksmith-4vcpu-ubuntu-2404' || 'ubuntu-24.04')) }} timeout-minutes: 20 env: COMPATIBILITY_TARGET: ${{ needs.preflight.outputs.compatibility_target }} diff --git a/test/scripts/ci-workflow-guards.test.ts b/test/scripts/ci-workflow-guards.test.ts index 30a512ad7836..478b3ce522ae 100644 --- a/test/scripts/ci-workflow-guards.test.ts +++ b/test/scripts/ci-workflow-guards.test.ts @@ -3045,6 +3045,7 @@ NODE "macos-swift": "blacksmith-12vcpu-macos-26", "ios-build": "blacksmith-12vcpu-macos-26", "check-test-types-hosted-core-shard": "blacksmith-8vcpu-ubuntu-2404", + "checks-ui": "blacksmith-8vcpu-ubuntu-2404", } as const; const configurableJobs = Object.entries(jobs) .filter(([, job]) => String(job["runs-on"]).startsWith("${{"))