TL;DR — This warning is your client being defensive: DeepSeek's thinking model emitted tool calls, but the thinking block (
reasoning_content) attached to that turn was not available to replay on the next request — usually because a proxy or history store dropped it. Instead of hard-failing with the HTTP 400, your tooling strips thinking mode and continues with plain inference — "degraded reasoning." It works, but you silently lose the reasoning quality you chose that model for. Fix the round-trip or route to a model whose quality does not depend on it.
What is actually happening
Reasoning models like DeepSeek's thinking variants produce two outputs per turn: the visible answer (and tool calls) plus a reasoning trace. DeepSeek's API contract requires that trace to be passed back verbatim with the conversation when tool results return. Some clients hard-fail when they cannot comply (HTTP 400). Smarter clients detect the missing trace and degrade gracefully — that is the log line you are seeing.
Degraded how? The follow-up request is sent without thinking mode, so the model completes the tool loop with ordinary inference. For simple tool calls the difference is often invisible. For the multi-step debugging and planning work you picked a reasoning model for, it defeats the purpose.
Where the thinking content gets lost
- Local proxies / client switchers that translate between API shapes and do not carry vendor-specific fields (the cc-switch case)
- History stores that persist only
role+content, discardingreasoning_content - Middleware that sanitizes message payloads before forwarding
Fixes, in order of preference
- Carry the field end-to-end. If you own the message store, persist and replay
reasoning_contentexactly as received. - Route thinking-model traffic through infrastructure that does this for you. CodeRouter round-trips reasoning fields per provider contract, so the warning disappears without client changes.
- Accept the degrade deliberately — if your tool loops are simple, switch that route to a standard model and stop paying the thinking-mode premium for reasoning you are not receiving.