pub(crate) fn decode_launch_settings(
value: Value,
) -> Result<SessionLaunchSettings>Expand description
Decode launch settings off the dispatcher channel. Symmetric to the
encode-side ?-propagation in AgentHandle::new_session.
A failure refuses the spawn (Ved, 2026-10-15). The settings carry the
blocked-tools denial (disallowedTools) among the rest, so a spawn on
defaults would start a session WIDER than the one that was configured -
silently unblocking tools. The decode runs in the BRIDGE, where a refusal
goes on the same event every other spawn failure does (ConnectionFailed),
so the seat records the failure and rolls its row instead of sitting at
Spawning with nothing to say.