Merge pull request #894: preserve graphs across repository root spellings
Resolves the collision with #890, which landed while this was in review. Both branches added a guard named `_assert_graph_matches_root` with the parameters in opposite order, so the later definition silently shadowed the earlier one and the surviving call sites disagreed (47 failures, 3 mypy errors). Keeping #894's, at the `incremental_update` choke point, subsumes the watch-only version from #890 because `watch()` reconciles through it. `watch()` now normalizes with `_canonical_repo_root` rather than `os.path.abspath`, which also fixes the CLI and `serve --auto-watch` halves of #892: a repository reached through a symlinked path is watched and indexed instead of being refused. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
T
Tirth Kanani committed
d5810d233391bdc4d4f2bd58143205dfea1e5f13