Why: Parallel tool execution makes same-turn tool events interleave, so consumers can no longer pair starts and ends by order; the kernel Event needs the call ID. MiniMax interleaved-thinking models stream their reasoning inside content <think> blocks unless the OpenAI-compatible request opts in with reasoning_split=true, which forces reasoning into the dedicated reasoning_content field the SSE layer already captures. Evidence: go test ./... green; new tests TestLoopToolEventsCarryCallID and TestOpenAIChatBodyReasoningSplit pin both behaviors (regression anchors for the backend parallel-work change). Impact: Additive Event.CallID (empty for non-tool events; existing consumers unaffected) and an opt-in Client.ReasoningSplit flag that only adds a request field when set. No default behavior change. Refs: Agent-System-Dev proposal 2026-10-10-agent-delegation-routing-sandbox.md (F2/F5), Dev task feature/agent-e1-parallel-fixes.