From ae829416d09da98249be43538df63d79245449b2 Mon Sep 17 00:00:00 2001 From: Kayos Date: Wed, 13 May 2026 15:08:44 -0700 Subject: [PATCH] =?UTF-8?q?RunRequest:=20bump=20timeout=5Fsecs=20ceiling?= =?UTF-8?q?=20600s=20=E2=86=92=201800s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Long-form prose-craft at --effort max can run 10–20 min wall clock. The old 600s cap stranded any max-effort gen call. Companion to the 'effort' field landing in this same area. --- clawdforge/server.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/clawdforge/server.py b/clawdforge/server.py index 1836ed2..eaa876d 100644 --- a/clawdforge/server.py +++ b/clawdforge/server.py @@ -129,7 +129,11 @@ class RunRequest(BaseModel): # get the budget they deserve. effort: Literal["low", "medium", "high", "xhigh", "max"] | None = None files: list[str] | None = None - timeout_secs: int | None = Field(default=None, ge=5, le=600) + # Long-form prose-craft at --effort max can run 10–20 min wall clock, + # so the per-run cap is 1800s. Server still streams a per-process + # SIGTERM at the boundary; the caller's RunResult.duration_ms is + # honest about wall clock. + timeout_secs: int | None = Field(default=None, ge=5, le=1800) class TokenCreateRequest(BaseModel):