coleam00/Archon · error · Error
Cannot resume: the prior run for '${workflowName}' has no co
Error message
Cannot resume: the prior run for '${workflowName}' has no completed nodes and no interactive-loop state. What it means
After loading prior run state, resume requires either completed nodes or interactive-loop state to reconstruct execution; if hydration succeeds but produces nothing resumable, the CLI refuses with this explanatory error rather than silently restarting or crashing later.
Source
Thrown at packages/cli/src/commands/workflow.ts:2973
// The lookup-by-(workflowName, cwd) was already done above for worktree-path
// resolution; reuse that result rather than querying twice.
const deps = createWorkflowDeps();
let prepared: Awaited<ReturnType<typeof hydrateResumableRun>> = null;
if (options.resume && resumable) {
try {
prepared = await hydrateResumableRun(deps, resumable);
} catch (error) {
const err = error as Error;
getLog().error(
{ err, workflowName, runId: resumable.id },
'cli.workflow_hydrate_resume_failed'
);
throw new Error(
`Cannot resume workflow '${workflowName}': failed to load prior run state — ${err.message}`
);
}
if (!prepared) {
throw new Error(
`Cannot resume: the prior run for '${workflowName}' has no completed nodes and no interactive-loop state.`
);
}
}
// Execute workflow with workingCwd (may be worktree path). `undefined` until
// assigned so the finally-block teardown can tell "threw before a result" from
// a real terminal/paused result.
let result: Awaited<ReturnType<typeof executeWorkflow>> | undefined;
// A genuine container-teardown failure captured in the finally, rethrown AFTER
// the finally when the run itself succeeded — so a leaked privileged container
// fails the CLI instead of reporting success + exit 0.
let containerTeardownError: Error | undefined;
// Container run context for the engine (Phase C): the write-back backend port +
// env id + policy. The executor drives suspend-on-pause and the write-back gate
// through this. Absent for host/in-place runs.
const containerRunCtx =
containerBackend && containerEnvIdView on GitHub (pinned to 0773b97458)
Solutions
- Start a new run of the workflow — there is no prior progress to restore.
- Verify you are resuming the intended run (`archon workflow list --verbose`), not an empty/aborted one.
- If you expect completed nodes, check whether another process cleaned or rewrote the run state.
- Ensure no ambiguous owner (lock files) caused the state to be discarded.
Defensive patterns
Strategy: validation
Validate before calling
// confirm the run actually has progress before resuming
const runs = await getWorkflowStatus();
const target = runs.runs.find(r => r.id === resumable.id);
if (!target || (target.completedCount ?? 0) === 0) {
throw new Error('Nothing to resume; start a fresh run');
} Prevention
- Only resume runs shown as having completed nodes in `archon workflow list --verbose`.
- Do not cancel runs immediately after creation if you intend to resume them.
- Start a fresh run when a run failed before its first node completed.
- Check retention/cleanup settings that may prune run state.
When it happens
Trigger: `archon workflow <name> --resume` targeting a run whose stored state has zero completed nodes and no interactive-loop checkpoint — the run failed or was cancelled before the first node finished, or state was cleared.
Common situations: Resuming a run that crashed during setup; a run cancelled immediately after creation; state pruned by cleanup; selecting the wrong run ID from `workflow list`.
Related errors
- --resume and --config are mutually exclusive. A resumed run
- --resume and --model are mutually exclusive. A resumed run k
- --resume and --branch are mutually exclusive. --resume reu
- --resume and --input are mutually exclusive. A resume repl
- --supersedes records a FRESH-lane rerun as replacing a prior
AI-assisted analysis of coleam00/Archon@0773b97458 (2026-09-01).
Data as JSON: /api/errors/036ea235fd510696.
Report an issue: GitHub.