mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-20 00:01:38 +00:00
The anthropic-transport-stream was overwriting thinkingSignature on each signature_delta event instead of appending. Since Anthropic sends the thinking block signature across multiple streaming chunks, only the last chunk survived. The truncated signature was persisted to session JSONL, causing all subsequent replay attempts to fail with HTTP 400: thinking or redacted_thinking blocks in the latest assistant message cannot be modified This permanently bricked sessions with no user recovery path. Fix: accumulate signature_delta values by concatenating instead of overwriting, matching the correct implementation in the LLM provider layer (src/llm/providers/anthropic.ts:629-634). Includes real-scenario proof against live Anthropic API validating that correct signatures replay successfully while truncated signatures are rejected. Fixes #87574 Refs #80625, #85781, #87475