pub fn start_boot_wave(
workspace: Arc<Workspace>,
project: Option<String>,
force_new: bool,
)Expand description
The boot spawn, for a process with no view: hold until the accounts settle, then dispatch the wave a view’s connect path dispatches - the named project’s lead, or every project whose lead row was left open, in forge.toml order. A seat whose last turn was cut off carries the restart note; a parked one is resumed with nothing.
Settling is terminal rather than Ready - a bailed account releases
the spawn, because the walk skips it and the pollers keep re-probing
it, so holding would wait on nothing.
The hold is bounded (BOOT_WAVE_WAIT). On expiry the wave goes
out regardless and a WARN names what was not ready: a refused spawn
carries its own reason (the spawn entries attach it), which beats a wave
that never fires and says nothing.
Spawned rather than awaited: the boot must not block on accounts, and nothing downstream reads the result.