coleam00/Archon · warning
could not verify uncommitted changes (worktree path may be…
Error message
could not verify uncommitted changes (worktree path may be missing)
What it means
isolationCompleteCommand adds this blocker when the pre-completion check for uncommitted changes cannot run — typically because the worktree path is missing so the git status command fails. Completion is deliberately blocked (fail-safe) rather than proceeding with unknown worktree state; the underlying error is logged as 'isolation.complete_uncommitted_check_failed'.
Solutions
- Restore the worktree (re-create/checkout the branch) or unmount/remount the volume so the path exists, then re-run complete
- If the work is genuinely gone and should not be preserved, cancel/abandon the isolation instead of forcing completion so state stays truthful
- Check the 'isolation.complete_uncommitted_check_failed' log for the exact git/FS error to distinguish a missing path from a permissions problem
- Commit any remaining changes in the worktree first, then re-run `archon isolation complete` — the blocker clears once the check can run
Defensive patterns
Strategy: validation
Validate before calling
// verify worktree path before attempting completion
if (!existsSync(env.working_path)) {
throw new Error(`worktree missing: ${env.working_path}; restore it or cancel the isolation`);
} Try / catch
try {
await checkUncommitted(worktreePath);
} catch (err) {
getLog().warn({ err, branch }, 'isolation.complete_uncommitted_check_failed');
blockers.push('could not verify uncommitted changes (worktree path may be missing)');
} Prevention
- Never delete or move an active worktree directory manually
- Complete or cancel isolations before host cleanup/volume unmounts
- Inspect 'isolation.complete_uncommitted_check_failed' logs for exact cause
- Commit work in the worktree before calling complete so the check passes cleanly
When it happens
Trigger: Running `archon isolation complete` when the git status probe inside the worktree throws — working_path was deleted or moved, path permissions deny access, the branch/repo metadata is gone, or git itself fails in the checkout.
Common situations: Manual deletion or relocation of the worktree before completing; a crashed run left the checkout half-removed; the codebase lives on an unmounted volume; disk cleanup removed the directory while the run was still marked active.
Related errors
- Container isolation is folder-project-only for now. Run…
- Error processing codebase
- Status: Failed
- Warning: Reusing existing worktree at
- Warning: Worktree ' ' is not based on ' '. Recreate with…
AI-assisted analysis of coleam00/Archon@0773b97458 (2026-09-01).
Data as JSON: /api/errors/eae1db228c37f645.
Report an issue: GitHub.
Appendix: source
Thrown at packages/cli/src/commands/isolation.ts:279
notFound++;
continue;
}
// Run all safety checks before removing — collect all blockers, report at once.
// Skipped entirely when --force is set.
if (!options.force) {
const blockers: string[] = [];
// Check 1: uncommitted changes in worktree
try {
const hasChanges = await hasUncommittedChanges(toWorktreePath(env.working_path));
if (hasChanges) {
blockers.push('uncommitted changes in worktree');
}
} catch (error) {
getLog().warn(
{ err: error as Error, branch },
'isolation.complete_uncommitted_check_failed'
);
blockers.push('could not verify uncommitted changes (worktree path may be missing)');
}
// Check 2: running workflow on this branch
try {
const activeRun = await workflowDb.getActiveWorkflowRunByPath(env.working_path);
if (activeRun) {
blockers.push(`running workflow: ${activeRun.workflow_name} (id: ${activeRun.id})`);
}
} catch (error) {
getLog().warn({ err: error as Error, branch }, 'isolation.complete_workflow_check_failed');
console.warn(' Warning: could not check for running workflows — skipping workflow check');
}
// Check 3: open PRs on this branch (requires gh CLI)
try {
const ghResult = await execFileAsync(View on GitHub (pinned to 0773b97458)