pub async fn run_loops(
cfg: SharedConfig,
stop: Arc<AtomicBool>,
logs: Arc<Mutex<Vec<LogEntry>>>,
busy: Arc<AtomicBool>,
paused: Arc<AtomicBool>,
observers: WorkerObservers,
schedule: LoopSchedule,
) -> Result<()>Expand description
Spawn the WS session + auto-updater, wait for them. Pulled out of
run so tests can drive with a different schedule.
paused is the runtime-only Pause / Resume toggle the UI flips.
When set, the WS session advertises auto_enabled = false in
heartbeats and refuses new job offers without restarting the
session.