The turn's blocks so far, in order.
Mark the turn complete, closing anything still streaming.
Fold in a whole interaction, live or replayed.
Text already streamed as deltas is not added again: on the live path the
same prose arrives twice, once on text_output and once inside the
interaction that lands on new_interactions.
Accumulates one turn's blocks, fed live or from storage.
The live feeder calls onText/onThought as deltas arrive and onInteraction as whole interactions land on
new_interactions; a replay feeder calls only onInteraction.Example: Feed text deltas into a renderer-independent turn.