{"version":"2.1.219","anchor":"register-repo-root-accepts-launch-time-roots-and-rejects-dup","canonical_anchor":"register-repo-root-accepts-launch-time-roots-and-rejects-dup","heading":"register_repo_root accepts launch-time roots and rejects duplicates","tier":"notice","area":"SDK Protocol","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.219\/e\/register-repo-root-accepts-launch-time-roots-and-rejects-dup","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.219","markdown":"### `register_repo_root` accepts launch-time roots and rejects duplicates\n\nRegistering a repo root now accepts launch-time --add-dir roots and clearly rejects duplicates or bad paths.\n\n**What**\n\nThe SDK control request for registering a repo root now accepts more legitimate targets and fails loudly on cases it previously handled silently or not at all.\n\n**Details**\n\n- Previously the target only had to be a subdirectory of cwd; it now also accepts subdirectories of directories registered at launch via `--add-dir`.\n- Rejects cwd itself with a dedicated message, rejects paths that are not directories, and rejects an already-registered directory instead of silently re-running registration.\n- Rejection message names both accepted roots: \"is not a subdirectory of cwd or of a launch-time --add-dir root\".\n- The tool description now states that the registration pipeline and DirectoryAdded hooks do not re-run on a duplicate.\n\n**Evidence**\n\n`is not a subdirectory of cwd or of a launch-time --add-dir root`\n\n- Area: SDK Protocol\n- Names: `--add-dir`, `register_repo_root`\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 0\/5"}