From 18f65c2d581c1ef2ce5aa3d73fb97a2c8f608238 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Wed, 29 Apr 2026 00:01:06 +0100 Subject: [PATCH] test(release): retry staged runtime mirror races --- scripts/e2e/parallels-macos-smoke.sh | 8 ++++++-- scripts/openclaw-cross-os-release-checks.ts | 6 ++++-- test/scripts/openclaw-cross-os-release-checks.test.ts | 7 +++++++ test/scripts/parallels-smoke-model.test.ts | 7 +++++++ 4 files changed, 24 insertions(+), 4 deletions(-) diff --git a/scripts/e2e/parallels-macos-smoke.sh b/scripts/e2e/parallels-macos-smoke.sh index ddb6376715b..c7c6e7179f7 100644 --- a/scripts/e2e/parallels-macos-smoke.sh +++ b/scripts/e2e/parallels-macos-smoke.sh @@ -1485,9 +1485,13 @@ show_gateway_status_compat() { } verify_turn() { + local agent_log agent_done agent_runner + agent_log="/tmp/openclaw-parallels-agent-turn.log" + agent_done="/tmp/openclaw-parallels-agent-turn.done" + agent_runner="/tmp/openclaw-parallels-agent-turn.sh" guest_current_user_exec "$GUEST_NODE_BIN" "$GUEST_OPENCLAW_ENTRY" models set "$MODEL_ID" guest_current_user_exec "$GUEST_NODE_BIN" "$GUEST_OPENCLAW_ENTRY" config set agents.defaults.skipBootstrap true --strict-json - guest_current_user_sh "$(cat < { new Error("document-extract failed to stage bundled runtime deps after 463ms"), ), ).toBe(true); + expect( + shouldRetryCrossOsAgentTurnError( + new Error( + "PluginLoadFailureError: plugin load failed: qqbot: Error: ENOENT: no such file or directory, open '/tmp/home/.openclaw/plugin-runtime-deps/openclaw-2026.4.27-beta.1/dist/console-DnTGmMkY.js'", + ), + ), + ).toBe(true); expect(shouldRetryCrossOsAgentTurnError(new Error("Agent output did not contain OK."))).toBe( false, ); diff --git a/test/scripts/parallels-smoke-model.test.ts b/test/scripts/parallels-smoke-model.test.ts index c03b2633c97..46b6d6bd0f4 100644 --- a/test/scripts/parallels-smoke-model.test.ts +++ b/test/scripts/parallels-smoke-model.test.ts @@ -54,4 +54,11 @@ describe("Parallels smoke model selection", () => { expect(script).toContain("deadline=$((SECONDS + TIMEOUT_GATEWAY_S))"); expect(script).toContain("gateway status --deep --require-rpc --timeout 30000"); }); + + it("runs the macOS agent turn through the logged guest runner", () => { + const script = readFileSync("scripts/e2e/parallels-macos-smoke.sh", "utf8"); + + expect(script).toContain('agent_log="/tmp/openclaw-parallels-agent-turn.log"'); + expect(script).toContain("run_logged_guest_current_user_sh"); + }); });