Skip to content

Investigate net9 ancestor .gitignore watcher reconciliation timeout #4966

Description

@Widthdom

Summary

IndexWatchRunnerTests.RunCore_SubprojectObservesAncestorIgnoreFileChanges_Issue4592 reproducibly times out on net9.0 while waiting for a subproject watcher to reconcile an ancestor .gitignore change. The same repository tree's full net8.0 suite passes.

This is adjacent to closed #4592, but no matching open issue was found.

Evidence

Observed on macOS arm64 while validating latest origin/main plus an unrelated LSP-only diff on 2026-07-29.

Full target run:

dotnet test tests/CodeIndex.Tests/CodeIndex.Tests.csproj -c Release -f net9.0 --no-restore -p:UseSharedCompilation=false

Result: 10,302 passed, 420 skipped, 1 failed after 34m45s. The sole failure was the watcher test above.

Isolated reproduction:

dotnet test tests/CodeIndex.Tests/CodeIndex.Tests.csproj -c Release -f net9.0 --no-restore --no-build --filter FullyQualifiedName=CodeIndex.Tests.IndexWatchRunnerTests.RunCore_SubprojectObservesAncestorIgnoreFileChanges_Issue4592

Result: the test failed after approximately 24 seconds with:

The ancestor .gitignore change was not reconciled by the subproject watcher.

Expected behavior

The ancestor ignore-file change should be observed and reconciled within the test deadline on net9.0, or the test/runtime policy should explicitly account for an unsupported target-specific watcher behavior.

Scope note

Neither tests/CodeIndex.Tests/IndexWatchRunnerTests.cs nor src/CodeIndex/IndexWatchRunner.cs was changed by the LSP diff that exposed this failure. Diagnose against origin/main and determine whether this is a net9 FileSystemWatcher timing issue, an environmental load sensitivity, or a product regression.

Metadata

Metadata

Assignees

No one assigned

    Labels

    .NETPull requests that update .NET codebugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions