What
On a remote transport, a streaming input frame whose message role is not user no longer produces a parse error: a user message wrapped one level deep is unwrapped and used, and anything else is dropped and retired. A control_request missing its request object or with a non-string subtype is dropped too. Local transports keep the old error behaviour.
Details
- New telemetry
tengu_sdk_malformed_inputcarriesmessage_type,reason,transportandoutcome, where outcome is one of dropped, unwrap_refused, repair_disabled or repaired. CLAUDE_CODE_DISABLE_NESTED_USER_REPAIRturns the unwrap off; it is a boolean env var and is unset by default, so repair is on wherever the remote path runs, and disabling it reportsrepair_disabled.
Evidence
Repaired a nested user message (one level), Dropping control_request: missing request object or non-string subtype
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
Names in the bundleCLAUDE_CODE_DISABLE_NESTED_USER_REPAIR
One source agreesOne thing we can check says the same as this entry.
The name it cites is new in this build
New in this build: CLAUDE_CODE_DISABLE_NESTED_USER_REPAIR