Repository navigation
fix: keep managed worktrees inside the selected repository - #730
Merged
Merged
Conversation
Meta-Develop
marked this pull request as ready for review
September 30, 2026 21:20
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.
Managed worktrees defaulted beside their repository, leaving generated lanes and Cargo configuration in the parent workspace. New implicit lanes use
<repo>/.maco/worktrees/<sanitized-repo-name>/<agent-id>. Register only the exact managed group in authenticated primary Gitinfo/excludeso raw candidate capture and Git index operations preserve a clean primary. Preserve operator contents, modes and negations, reject unadmitted config indirection, and fence repository/config/ignore generations. Explicit roots receive no automatic exclusion.Discover exact new and legacy grouped sweep roots within the workspace and its direct repository children, preserving stored bindings and primary/common-directory authentication. GC and reconciliation recognize registered lanes by validated actual basenames. Anchor native Git ignore checks to the bound repository, and keep embedded-child status caches outside the primary. Primary/candidate integrity production predicates remain unchanged; manual
.worktreescontent receives no new exemption.Validation at
2c45e411: independent full eleven-file logic/privacy review PASS; all GitHub checks PASS, including the required Rust CI gate, Linux formatting/all-target check/strict Clippy, every integration test, Windows/macOS all-target check and test compilation. Linux library partitions passed 3,102 rest, 973 supervise and 57 autopilot tests, with 16 existing ignored tests. The real renamed-manual destructive GC/reconciliation regression and new managed-creation/primary-integrity regressions passed. Eight focused portable tests, offline native library checking, full formatting and whitespace checks also passed.