You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Prevent finish cleanup from deleting caller cwd (#426)
Finishing from a subdirectory inside an agent worktree made the active-worktree check compare the source worktree root against the physical subdirectory. That let cleanup remove the caller's cwd after a successful merge, which then surfaced as a false background-command failure.
Constraint: Preserve active shell cwd even if this leaves the detached worktree for a later gx cleanup pass.
Rejected: Always pivot prune to the primary checkout | it can delete the caller's active shell cwd and recreate the false failure.
Confidence: high
Scope-risk: narrow
Directive: Active-cwd cleanup must compare worktree roots, not raw pwd values.
Tested: node --test test/finish.test.js; node --test --test-name-pattern 'agent-branch-finish pivots' test/metadata.test.js; bash -n scripts/agent-branch-finish.sh; bash -n templates/scripts/agent-branch-finish.sh; git diff --check; openspec validate --specs
Not-tested: Live Claude background shell prompt refresh after finish.
Co-authored-by: NagyVikt <nagy.viktordp@gmail.com>
0 commit comments