Commit Graph

1 Commits

Author SHA1 Message Date
hamza.khyari b907ccd9f8 fix(plan): clean up worktree sandbox on plan cancel
CI / helm (pull_request) Successful in 35s
CI / build (pull_request) Successful in 3m51s
CI / lint (pull_request) Successful in 3m56s
CI / quality (pull_request) Successful in 4m21s
CI / typecheck (pull_request) Successful in 4m32s
CI / security (pull_request) Successful in 4m43s
CI / push-validation (pull_request) Successful in 23s
CI / e2e_tests (pull_request) Successful in 7m51s
CI / integration_tests (pull_request) Successful in 8m32s
CI / unit_tests (pull_request) Successful in 9m6s
CI / docker (pull_request) Successful in 1m29s
CI / coverage (pull_request) Successful in 13m28s
CI / status-check (pull_request) Waiting to run
When a user cancels a plan after execute, the git worktree branch and
directory created during execute are not cleaned up, causing resource
leaks (dangling worktrees accumulate over time).

Add GitWorktreeSandbox.cleanup_stale() classmethod in the
infrastructure layer with idempotent error handling.
_cleanup_sandbox_for_plan() in the CLI layer resolves the plan's
linked git-checkout resource and delegates to cleanup_stale().
Called after service.cancel_plan() in the cancel CLI handler.

ISSUES CLOSED: #9230
2026-04-20 13:54:28 +00:00