Live tool output is rendered through a dedicated progress element rather than a shared slot.
What's wrong with this entry?
The mutable slot the REPL used to pass tool UI through is gone, replaced by a dedicated progress element, and the message list is now driven by a descriptor saying which live turn to show rather than being handed messages and pause flags individually.
toolJsxSlot,clearToolJSXand the background-hint setters are removed from the host binding.- Scroll plumbing changed from raw refs to viewport objects for both the main and modal scroll areas.
- Structural only; tool UI and transcript rendering now share one path.
source: { kind: "live", focused: ya, turn: kt },
Strings lifted out of the shipped bundle, so the claim above can be checked against them.