Repository navigation
Preserve checkout identity through Worktree cleanup - #504
Merged
Merged
Conversation
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #503.
Successful Worktree acquisition now carries pinned checkout and registration identity through both lifetime owners. Recreated or uncertain resources survive cleanup, even when pathname, administrative pathname, Issue branch and HEAD match the original.
Evidence
an_old_owner_retains_a_recreated_checkout_even_with_the_same_paths_branch_and_headfailed because dropping the old owner deletedreplacement.txt(NotFound).After: the same regression and its detached Architecture review counterpart preserve replacement files, registrations and exact refs, and assert retention warnings.
cargo fmt --check,cargo clippy --all-targets -- -D warnings, and the fullcargo testsuite (1,400 passed, one existing ignored test).bc2db46.Test seams
Unaddressed findings
Standards
None. The one heuristic finding, identity expectations coupled to directory names, was addressed with explicit attached/detached expectations.
Spec
None. The Spec review reported no findings.
Merge Danger
Door: two-way
No persistent format or acquisition policy changes; the implementation can be reverted.
Blast Radius: Worktrees
Shared scope-exit cleanup for Runs, Spec runs and Architecture reviews. Uncertain evidence retains local resources for manual recovery; owned checkout and review scratch disposal remains unchanged.
Built with codex · gpt-6.1-sol · xhigh