diff --git a/lib/openclaw-chat/config.ts b/lib/openclaw-chat/config.ts index d538ecfca..6fa3c3124 100644 --- a/lib/openclaw-chat/config.ts +++ b/lib/openclaw-chat/config.ts @@ -20,7 +20,7 @@ export type AdminOpenClawChatConfig = Omit & { tokenPreview: string; }; -const DEFAULT_TIMEOUT_MS = 180_000; +const DEFAULT_TIMEOUT_MS = 30 * 60 * 1000; const MIN_TIMEOUT_MS = 5_000; // Complex OpenClaw skills can legitimately run for up to thirty minutes. // Keep this aligned with the route maxDuration and the integration contract. diff --git a/tests/routes/openclaw-config.test.ts b/tests/routes/openclaw-config.test.ts index bb2312ef0..39e3466e5 100644 --- a/tests/routes/openclaw-config.test.ts +++ b/tests/routes/openclaw-config.test.ts @@ -2,6 +2,10 @@ import { expect, test } from "@playwright/test"; import { normalizeOpenClawChatConfig } from "@/lib/openclaw-chat/config"; test.describe("OpenClaw chat configuration", () => { + test("defaults long-running tasks to thirty minutes", () => { + expect(normalizeOpenClawChatConfig({}).timeoutMs).toBe(30 * 60 * 1000); + }); + test("allows a thirty-minute timeout for complex skills", () => { expect( normalizeOpenClawChatConfig({