Skip to content

Reconcile external symlink retargets in watch mode - #5145

Draft
Widthdom wants to merge 2 commits into
mainfrom
fix-issue5120
Draft

Reconcile external symlink retargets in watch mode#5145
Widthdom wants to merge 2 commits into
mainfrom
fix-issue5120

Conversation

@Widthdom

Copy link
Copy Markdown
Owner

Summary

  • Preserve watch reconciliation for an indexed in-workspace symlink when --follow-symlinks internal later resolves it outside the workspace.
  • Keep the lexical link path as the cleanup input without opening or indexing the disallowed external target.
  • Add deterministic end-to-end regression coverage for stale file and symbol removal.

Validation

  • dotnet build CodeIndex.sln -c Release -p:UseSharedCompilation=false (0 warnings, 0 errors)
  • Issue Reconcile indexed symlinks retargeted outside the workspace in watch mode #5120 focused regression on Release net8.0 and net9.0 (passed)
  • IndexWatchRunnerTests on Debug net8.0 (78 passed) and the new regression on Debug net9.0 (passed)
  • Full solution tests on Release net8.0/net9.0 (23,017 passed, 430 skipped, 0 failed)
  • dotnet run --project tools/CodeIndex.Changelog -- check (38 fragments validated)
  • Root and workspace index checks passed after a full refresh and fold backfill

Documentation and changelog

  • Updated the English and Japanese sections of DEVELOPER_GUIDE.md and TESTING_GUIDE.md.
  • Added changelog.d/unreleased/5120.fixed.md.

Adversarial review

No blocking/actionable issues found.

Follow-up candidates

None.

Fixes #5120

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reconcile indexed symlinks retargeted outside the workspace in watch mode

1 participant