Stream chat model events using the new content-block-centric protocol.
Override this method to provide native event streaming from the provider SDK.
The default implementation bridges from _streamResponseChunks by
synthesizing lifecycle events from ChatGenerationChunk objects.
Event lifecycle
MessageStart
-> ContentBlockStart(index, contentBlock)
-> ContentBlockDelta(index, delta) ...
-> ContentBlockFinish(index, contentBlock)
-> MessageFinish(reason, usage?)
Content blocks may interleave (e.g., parallel tool calls). The only
invariant: a block's start precedes its deltas, and its deltas precede
its finish.