The streaming path does not call _store_reasoning_traces(), _store_tool_calls(), _store_response_metadata(), or any equivalent of _log_completion(). The non-streaming path uses all of these. This creates silent behavioral differences between generate_async and stream_async.
#1616