LemonRouter. ToolStatusCoalescer
(lemon_router v0.1.0)
View Source
Coalesce tool/action lifecycle events into a single editable "Tool calls" message.
This is intentionally separate from StreamCoalescer (answer streaming). Tool actions can run without producing output deltas, so we want a dedicated status surface.
Channel-specific presentation is handled by LemonChannels.Dispatcher.
Summary
Functions
Attach subsequent tool status updates to the latest assistant text chunk.
Returns a specification to start this module under a supervisor.
Finalize the current tool-status segment without marking running actions complete.
Finalize the tool status for a run by marking any still-running actions as completed.
Force flush the tool status message for a session/channel.
Ingest an action event into the tool status coalescer.
Ingest a projected child action into a parent-owned task surface.
Functions
Attach subsequent tool status updates to the latest assistant text chunk.
Returns a specification to start this module under a supervisor.
See Supervisor.
Finalize the current tool-status segment without marking running actions complete.
Finalize the tool status for a run by marking any still-running actions as completed.
Force flush the tool status message for a session/channel.
Ingest an action event into the tool status coalescer.
Options:
:meta- semantic delivery metadata (for example:user_msg_id):surface- semantic presentation surface, defaults to:status
Ingest a projected child action into a parent-owned task surface.
This is a narrow wrapper over normal action ingestion so callers can be explicit that the event originated from a bridged child run rather than the parent run's native engine event stream.