From 42626648d70b004ce5e31055ee0bc87098316a52 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Tue, 3 Mar 2026 01:11:18 +0000 Subject: [PATCH] docs(models): clarify moonshot thinking and failover stop-reason errors --- docs/concepts/model-failover.md | 3 +++ docs/tools/thinking.md | 1 + 2 files changed, 4 insertions(+) diff --git a/docs/concepts/model-failover.md b/docs/concepts/model-failover.md index 8e74ec3fecf..80b3420d07c 100644 --- a/docs/concepts/model-failover.md +++ b/docs/concepts/model-failover.md @@ -83,6 +83,9 @@ When a profile fails due to auth/rate‑limit errors (or a timeout that looks like rate limiting), OpenClaw marks it in cooldown and moves to the next profile. Format/invalid‑request errors (for example Cloud Code Assist tool call ID validation failures) are treated as failover‑worthy and use the same cooldowns. +OpenAI-compatible stop-reason errors such as `Unhandled stop reason: error`, +`stop reason: error`, and `reason: error` are classified as timeout/failover +signals. Cooldowns use exponential backoff: diff --git a/docs/tools/thinking.md b/docs/tools/thinking.md index d5d27011f84..9a2fdc87ea6 100644 --- a/docs/tools/thinking.md +++ b/docs/tools/thinking.md @@ -22,6 +22,7 @@ title: "Thinking Levels" - Provider notes: - Anthropic Claude 4.6 models default to `adaptive` when no explicit thinking level is set. - Z.AI (`zai/*`) only supports binary thinking (`on`/`off`). Any non-`off` level is treated as `on` (mapped to `low`). + - Moonshot (`moonshot/*`) maps `/think off` to `thinking: { type: "disabled" }` and any non-`off` level to `thinking: { type: "enabled" }`. When thinking is enabled, Moonshot only accepts `tool_choice` `auto|none`; OpenClaw normalizes incompatible values to `auto`. ## Resolution order