Hmbown/CodeWhale · error

Fleet worker {worker_id} has no coordination-registered laun

Error message

Fleet worker {worker_id} has no coordination-registered launch spec

What it means

When a worker's task has a persisted coordination record, the executor requires that record to carry a launch spec (Some(Some(record))). A record of Some(None) means coordination knows about the worker but has no registered launch spec, so the expected launch cannot be validated against durable state, and the launch is refused.

Source

Thrown at crates/tui/src/fleet/manager.rs:1444

                            &task_spec,
                            &worker_spec,
                            self.run_model(),
                            &cwd,
                            &self.workspace,
                            roster.members(),
                            None,
                        )?,
                        &self.exec_config,
                    ),
                    task.entry.attempts,
                );
                let launch_spec = match coordination_record {
                    Some(Some(record)) => {
                        validate_registered_launch_spec(&record.spec, &expected_launch_spec)?;
                        record.spec
                    }
                    Some(None) => {
                        bail!("Fleet worker {worker_id} has no coordination-registered launch spec")
                    }
                    None => expected_launch_spec,
                };
                let command = build_worker_exec_command_with_launch_spec(
                    codewhale_binary,
                    &task_spec,
                    &launch_spec,
                    &self.exec_config,
                    model,
                    roster.members(),
                )?;
                Ok((cwd, command))
            })();
            let attempt = FleetExecutorAttempt {
                run_id: task.entry.run_id.clone(),
                task_id: task.entry.task_id.clone(),
                attempt: task.entry.attempts,
            };

View on GitHub (pinned to 0c42157ee5)

Solutions

  1. Cancel/complete the affected task so the coordination record is retired, then let the scheduler issue a fresh lease with a full launch spec
  2. If persistent, remove the stale coordination record for that worker and re-run
  3. Ensure manager and worker processes come from the same Codewhale version
Defensive patterns

Strategy: fallback

Try / catch

match launch_or_restart(&manager, &worker_id) {
    Ok(x) => Ok(x),
    Err(err) if err.to_string().contains("no coordination-registered launch spec") => {
        // retire the record via cancel, then let a fresh lease produce a full spec
        Err(err)
    }
    Err(err) => Err(err),
}

Prevention

When it happens

Trigger: A retry/relaunch of a worker whose coordination record exists but its launch spec was cleared or never written: crash between record creation and spec persistence, or a record written by an older version.

Common situations: Relaunching workers after an unclean shutdown; upgrading Codewhale across a change in coordination record schema; state restored partially from backup.

Related errors


AI-assisted analysis of Hmbown/CodeWhale@0c42157ee5 (2026-08-20). Data as JSON: /api/errors/50a94c72da7cd7b9. Report an issue: GitHub.