Keep realtime convenience from creating duplicate or unauthorized actions.
1. Tool execution
Validate a live tool request exactly as you would a non-streaming request. Associate the result with the correct call identity and require authorization before running it.
2. Reconnect policy
A reconnect may create a new session rather than resume the old one. Use supported resumption mechanisms only where documented, and reconcile local UI state with what was acknowledged.
3. Write uncertainty
A connection can fail after a write succeeds but before its result arrives. Use idempotency and status lookup rather than assuming failure means the write did not happen.
Worked scenario
A field lookup times out during reconnect. A read can be retried safely; a ticket creation needs an operation ID and a check for prior completion.
Apply it
Add a read-only lookup and simulate a drop before and after the tool result. Document the different recovery outcomes.
Check your understanding
Recovery does not silently duplicate an externally visible action. Explain the decision and show evidence from your implementation or design. If you cannot demonstrate it yet, revisit the relevant section before continuing.