diff --git a/.github/workflows/install-smoke.yml b/.github/workflows/install-smoke.yml index 8869756f77f..d048adbc724 100644 --- a/.github/workflows/install-smoke.yml +++ b/.github/workflows/install-smoke.yml @@ -315,7 +315,7 @@ jobs: - name: Pull root Dockerfile smoke image env: IMAGE_REF: ${{ needs.root_dockerfile_image.outputs.image_ref }} - run: timeout 300s docker pull "$IMAGE_REF" + run: timeout 600s docker pull "$IMAGE_REF" - name: Run root Dockerfile CLI smoke env: @@ -405,7 +405,7 @@ jobs: - name: Pull root Dockerfile smoke image env: IMAGE_REF: ${{ needs.root_dockerfile_image.outputs.image_ref }} - run: timeout 300s docker pull "$IMAGE_REF" + run: timeout 600s docker pull "$IMAGE_REF" - name: Set up Blacksmith Docker Builder uses: useblacksmith/setup-docker-builder@722e97d12b1d06a961800dd6c05d79d951ad3c80 # v1 @@ -472,7 +472,7 @@ jobs: - name: Pull root Dockerfile smoke image env: IMAGE_REF: ${{ needs.root_dockerfile_image.outputs.image_ref }} - run: timeout 300s docker pull "$IMAGE_REF" + run: timeout 600s docker pull "$IMAGE_REF" - name: Setup Node environment for Bun smoke uses: ./.github/actions/setup-node-env diff --git a/.github/workflows/openclaw-cross-os-release-checks-reusable.yml b/.github/workflows/openclaw-cross-os-release-checks-reusable.yml index 148eba6d9a4..5752cdd269f 100644 --- a/.github/workflows/openclaw-cross-os-release-checks-reusable.yml +++ b/.github/workflows/openclaw-cross-os-release-checks-reusable.yml @@ -76,6 +76,11 @@ on: required: false default: "" type: string + openai_model: + description: OpenAI model for release cross-OS agent-turn smoke + required: false + default: "" + type: string workflow_call: inputs: ref: @@ -166,7 +171,7 @@ env: PNPM_VERSION: "10.32.1" OPENCLAW_REPOSITORY: openclaw/openclaw TSX_VERSION: "4.21.0" - OPENCLAW_CROSS_OS_OPENAI_MODEL: ${{ vars.OPENCLAW_CROSS_OS_OPENAI_MODEL || 'openai/gpt-5.5' }} + OPENCLAW_CROSS_OS_OPENAI_MODEL: ${{ inputs.openai_model || vars.OPENCLAW_CROSS_OS_OPENAI_MODEL || 'openai/gpt-5.5' }} jobs: prepare: diff --git a/.github/workflows/openclaw-release-checks.yml b/.github/workflows/openclaw-release-checks.yml index 4e7fe3f52d1..baa35ec29a5 100644 --- a/.github/workflows/openclaw-release-checks.yml +++ b/.github/workflows/openclaw-release-checks.yml @@ -331,6 +331,7 @@ jobs: candidate_file_name: openclaw-current.tgz candidate_version: ${{ needs.prepare_release_package.outputs.package_version }} candidate_source_sha: ${{ needs.prepare_release_package.outputs.source_sha }} + openai_model: openai/gpt-5.5 secrets: OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} diff --git a/test/scripts/openclaw-cross-os-release-checks.test.ts b/test/scripts/openclaw-cross-os-release-checks.test.ts index 3aa6ebbacea..caf361dc379 100644 --- a/test/scripts/openclaw-cross-os-release-checks.test.ts +++ b/test/scripts/openclaw-cross-os-release-checks.test.ts @@ -137,16 +137,17 @@ describe("scripts/openclaw-cross-os-release-checks", () => { expect(resolveProviderConfig("openai", {})?.model).toBe("openai/gpt-5.5"); }); - it("keeps cross-OS release workflow OpenAI default on GPT-5.5", () => { + it("keeps release cross-OS OpenAI smoke on GPT-5.5", () => { const workflow = readFileSync( ".github/workflows/openclaw-cross-os-release-checks-reusable.yml", "utf8", ); + const releaseChecks = readFileSync(".github/workflows/openclaw-release-checks.yml", "utf8"); expect(workflow).toContain( - "OPENCLAW_CROSS_OS_OPENAI_MODEL: ${{ vars.OPENCLAW_CROSS_OS_OPENAI_MODEL || 'openai/gpt-5.5' }}", + "OPENCLAW_CROSS_OS_OPENAI_MODEL: ${{ inputs.openai_model || vars.OPENCLAW_CROSS_OS_OPENAI_MODEL || 'openai/gpt-5.5' }}", ); - expect(workflow).not.toContain("openai/gpt-5.4-mini"); + expect(releaseChecks).toContain("openai_model: openai/gpt-5.5"); }); it("keeps release smoke plugin allowlists focused on agent-turn essentials", () => { diff --git a/test/scripts/test-install-sh-docker.test.ts b/test/scripts/test-install-sh-docker.test.ts index 7ccb6b21281..8b0499c9e54 100644 --- a/test/scripts/test-install-sh-docker.test.ts +++ b/test/scripts/test-install-sh-docker.test.ts @@ -209,6 +209,8 @@ describe("bun global install smoke", () => { expect(workflow).toContain("run_fast_install_smoke"); expect(workflow).toContain("run_full_install_smoke"); expect(workflow).toContain("timeout 45m docker buildx build"); + expect(workflow).toContain('timeout 600s docker pull "$IMAGE_REF"'); + expect(workflow).not.toContain('timeout 300s docker pull "$IMAGE_REF"'); expect(workflow).toContain("--progress=plain"); expect(workflow).toContain("--load"); expect(workflow).not.toContain("--cache-from");