A continuation SSE delta that repeats a tool call's `id` or `name` as an empty string — or as `null`, which some OpenAI-compatible gateways send — erased the identity established by the call's first delta. The assembled block reached the loop with an empty name and failed as `unknown tool ""`, and the empty `callId` persisted into `tool/result`, which the session reader refuses on reopen. `acceptIdentity` accepts only a non-empty string, so a repeated empty or null field means "no update". A tool call still missing `id` or `name` at `[DONE]` ends the response with the new retryable `MALFORMED_TOOL_CALL` code instead of closing an unusable block. |
||
|---|---|---|
| .. | ||
| architecture | ||
| bug-fix | ||
| feature | ||
| process | ||
| simplification | ||
| testing | ||
| AGENTS.md | ||
| CLAUDE.md | ||