diff --git a/.github/workflows/openclaw-live-and-e2e-checks-reusable.yml b/.github/workflows/openclaw-live-and-e2e-checks-reusable.yml index 77f8ae27da4d..4a39fab1439a 100644 --- a/.github/workflows/openclaw-live-and-e2e-checks-reusable.yml +++ b/.github/workflows/openclaw-live-and-e2e-checks-reusable.yml @@ -977,7 +977,7 @@ jobs: if: inputs.include_repo_e2e && inputs.live_suite_filter == '' continue-on-error: ${{ inputs.advisory }} runs-on: ${{ inputs.use_github_hosted_runners && 'ubuntu-24.04' || 'blacksmith-32vcpu-ubuntu-2404' }} - timeout-minutes: ${{ inputs.release_test_profile == 'full' && 90 || 60 }} + timeout-minutes: 90 env: OPENCLAW_BUILD_PRIVATE_QA: "1" OPENCLAW_ENABLE_PRIVATE_QA_CLI: "1" @@ -1004,6 +1004,9 @@ jobs: - name: Install Playwright Chromium run: pnpm --dir ui exec playwright install --with-deps chromium + - name: Build sandbox image + run: scripts/sandbox-setup.sh + - name: Run repo E2E suite run: pnpm test:e2e diff --git a/test/scripts/ci-workflow-guards.test.ts b/test/scripts/ci-workflow-guards.test.ts index 4f8b8fa0695e..0fc41df842d6 100644 --- a/test/scripts/ci-workflow-guards.test.ts +++ b/test/scripts/ci-workflow-guards.test.ts @@ -3208,6 +3208,14 @@ NODE OPENCLAW_BUILD_PRIVATE_QA: "1", OPENCLAW_ENABLE_PRIVATE_QA_CLI: "1", }); + expect(releaseChecks.jobs.validate_repo_e2e["timeout-minutes"]).toBe(90); + const repoE2eSteps = releaseChecks.jobs.validate_repo_e2e.steps as WorkflowStep[]; + const sandboxSetupIndex = repoE2eSteps.findIndex( + (step) => step.name === "Build sandbox image" && step.run === "scripts/sandbox-setup.sh", + ); + const repoE2eIndex = repoE2eSteps.findIndex((step) => step.name === "Run repo E2E suite"); + expect(sandboxSetupIndex).toBeGreaterThanOrEqual(0); + expect(repoE2eIndex).toBeGreaterThan(sandboxSetupIndex); const targetedGroupStep = releaseChecks.jobs.plan_docker_lane_groups.steps.find( (step: WorkflowStep) => step.name === "Build targeted Docker lane groups", );