diff --git a/.openclaw-sync/source.json b/.openclaw-sync/source.json index fdf538e61..96c6e6206 100644 --- a/.openclaw-sync/source.json +++ b/.openclaw-sync/source.json @@ -1,5 +1,5 @@ { "repository": "openclaw/openclaw", - "sha": "f6ee2877e05254d73f2224025266461b7b1cdade", - "syncedAt": "2026-04-27T10:20:35.547Z" + "sha": "fa0d81ed1332c219226299d8bd2d4449ddcac909", + "syncedAt": "2026-04-27T10:25:12.652Z" } diff --git a/docs/gateway/troubleshooting.md b/docs/gateway/troubleshooting.md index ef2c6d629..7fca62f86 100644 --- a/docs/gateway/troubleshooting.md +++ b/docs/gateway/troubleshooting.md @@ -119,11 +119,13 @@ Look for: - direct tiny calls succeed, but OpenClaw runs fail only on larger prompts - backend errors about `messages[].content` expecting a string +- intermittent `incomplete turn detected ... stopReason=stop payloads=0` warnings with an OpenAI-compatible local backend - backend crashes that appear only with larger prompt-token counts or full agent runtime prompts - `messages[...].content: invalid type: sequence, expected a string` → backend rejects structured Chat Completions content parts. Fix: set `models.providers..models[].compat.requiresStringContent: true`. + - `incomplete turn detected ... stopReason=stop payloads=0` → the backend completed the Chat Completions request but returned no user-visible assistant text for that turn. OpenClaw retries replay-safe empty OpenAI-compatible turns once; persistent failures usually mean the backend is emitting empty/non-text content or suppressing final-answer text. - direct tiny requests succeed, but OpenClaw agent runs fail with backend/model crashes (for example Gemma on some `inferrs` builds) → OpenClaw transport is likely already correct; the backend is failing on the larger agent-runtime prompt shape. - failures shrink after disabling tools but do not disappear → tool schemas were part of the pressure, but the remaining issue is still upstream model/server capacity or a backend bug.