Skip to content

Source Generator returns diagnostics with locations outside the current compilation #1152

@JoeRobich

Description

@JoeRobich

Originally reported by @AArnott at dotnet/vscode-csharp#8887

Describe the bug
Roslyn is throwing an exception which is being caused by the diagnostics returned from the MCP source generator. The locations being returned for the diagnostics are not from the current Compilation. This is likely caused by not including the location in the equality check leading to returning locations from earlier iterations. See

// For incremental generator caching, we compare only the logical content, not the Location object

To Reproduce
Steps to reproduce the behavior:

  1. Open the repo and branch at: https://github.com/coreai-microsoft/vs-mcp/tree/initial-mcp in VS Code
  2. Position the caret at one of the many warnings.
  3. Try to activate a Fix code action.

Expected behavior
It works.

Logs
The fix fails with the error given above.

C# output window pane
2026-01-14 19:56:42.717 [info] Locating .NET runtime version 10.0.0
2026-01-14 19:56:47.690 [info] Dotnet path: C:\Program Files\dotnet\dotnet.exe
2026-01-14 19:56:47.690 [info] Activating C# + C# Dev Kit...
2026-01-14 19:56:48.232 [info] [stdout] info: Program[0]
      Server started with process ID 223696

2026-01-14 19:56:48.879 [info] [stdout] {"pipeName":"\\\\.\\pipe\\e8d2b360"}

2026-01-14 19:56:48.879 [info] received named pipe information from server
2026-01-14 19:56:48.879 [info] client has connected to server
2026-01-14 19:56:48.940 [info] [Program] Language server initialized
2026-01-14 19:56:49.517 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\src\Microsoft.DevDiv.VisualStudio.Mcp\test\Microsoft.DevDiv.VisualStudio.Mcp.Tests\Microsoft.DevDiv.VisualStudio.Mcp.Tests.csproj loaded by C# Dev Kit
2026-01-14 19:56:49.605 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\src\Microsoft.DevDiv.VisualStudio.Mcp\src\Microsoft.DevDiv.VisualStudio.Mcp\Microsoft.DevDiv.VisualStudio.Mcp.csproj loaded by C# Dev Kit
2026-01-14 19:56:49.763 [info] [textDocument/_vs_getProjectContexts] [Microsoft.CodeAnalysis.MSBuild.BuildHostProcessManager] .NET BuildHost started from c:\Users\andarno\.vscode\extensions\ms-dotnettools.csharp-2.111.2-win32-x64\.roslyn\Microsoft.CodeAnalysis.LanguageServer.exe reloading to start from C:\Program Files\dotnet\dotnet.exe to match necessary SDK location.
2026-01-14 19:56:50.633 [warning] [textDocument/_vs_getProjectContexts] [LanguageServerProjectLoader] Project C:\Users\andarno\AppData\Local\Temp\roslyn-canonical-misc\ce7648a5-c814-4034-87b9-bfe3f37db873\Canonical.csproj has unresolved dependencies
2026-01-14 19:56:50.731 [info] [textDocument/_vs_getProjectContexts] [LanguageServerProjectLoader] Successfully completed load of C:\Users\andarno\AppData\Local\Temp\roslyn-canonical-misc\ce7648a5-c814-4034-87b9-bfe3f37db873\Canonical.cs
2026-01-14 19:56:50.733 [info] [textDocument/_vs_getProjectContexts] [LanguageServerProjectLoader] Restoring Canonical.cs: Running dotnet restore on C:\Users\andarno\AppData\Local\Temp\roslyn-canonical-misc\ce7648a5-c814-4034-87b9-bfe3f37db873\Canonical.cs
2026-01-14 19:56:50.735 [info] [textDocument/_vs_getProjectContexts] [Microsoft.CodeAnalysis.LanguageServer.DotnetCliHelper] Using dotnet executable configured on the PATH
2026-01-14 19:56:51.357 [info] [textDocument/_vs_getProjectContexts] [LanguageServerProjectLoader] Restoring Canonical.cs:   Determining projects to restore...
2026-01-14 19:56:51.858 [info] [textDocument/_vs_getProjectContexts] [LanguageServerProjectLoader] Restoring Canonical.cs:   Restored C:\Users\andarno\AppData\Local\Temp\roslyn-canonical-misc\ce7648a5-c814-4034-87b9-bfe3f37db873\Canonical.csproj (in 330 ms).
2026-01-14 19:56:51.905 [info] [textDocument/_vs_getProjectContexts] [LanguageServerProjectLoader] Restore complete
2026-01-14 19:56:51.906 [info] [textDocument/_vs_getProjectContexts] [LanguageServerProjectLoader] Completed (re)load of all projects in 00:00:02.3532891
2026-01-14 19:56:52.850 [info] [workspace/didChangeWatchedFiles] [Microsoft.CodeAnalysis.MSBuild.BuildHostProcessManager] .NET BuildHost started from c:\Users\andarno\.vscode\extensions\ms-dotnettools.csharp-2.111.2-win32-x64\.roslyn\Microsoft.CodeAnalysis.LanguageServer.exe reloading to start from C:\Program Files\dotnet\dotnet.exe to match necessary SDK location.
2026-01-14 19:56:53.621 [warning] [workspace/didChangeWatchedFiles] [LanguageServerProjectLoader] Project C:\Users\andarno\AppData\Local\Temp\roslyn-canonical-misc\ce7648a5-c814-4034-87b9-bfe3f37db873\Canonical.csproj has unresolved dependencies
2026-01-14 19:56:53.622 [info] [workspace/didChangeWatchedFiles] [LanguageServerProjectLoader] Successfully completed load of C:\Users\andarno\AppData\Local\Temp\roslyn-canonical-misc\ce7648a5-c814-4034-87b9-bfe3f37db873\Canonical.cs
2026-01-14 19:56:53.622 [info] [workspace/didChangeWatchedFiles] [LanguageServerProjectLoader] Restoring Canonical.cs: Running dotnet restore on C:\Users\andarno\AppData\Local\Temp\roslyn-canonical-misc\ce7648a5-c814-4034-87b9-bfe3f37db873\Canonical.cs
2026-01-14 19:56:54.214 [info] [workspace/didChangeWatchedFiles] [LanguageServerProjectLoader] Restoring Canonical.cs:   Determining projects to restore...
2026-01-14 19:56:54.392 [info] [workspace/didChangeWatchedFiles] [LanguageServerProjectLoader] Restoring Canonical.cs:   All projects are up-to-date for restore.
2026-01-14 19:56:54.531 [info] [workspace/didChangeWatchedFiles] [LanguageServerProjectLoader] Restore complete
2026-01-14 19:56:54.531 [info] [workspace/didChangeWatchedFiles] [LanguageServerProjectLoader] Completed (re)load of all projects in 00:00:01.8602485
2026-01-14 19:57:01.328 [error] [textDocument/codeAction] [LanguageServerExtensionManager] Microsoft.CodeAnalysis.CodeRefactorings.ExtractMethod.ExtractMethodCodeRefactoringProvider threw an exception. System.ArgumentException: SyntaxTree is not part of the compilation (Parameter 'syntaxTree')
   at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.CommonGetSemanticModel(SyntaxTree syntaxTree, SemanticModelOptions options) in /_/src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs:line 4065
   at Microsoft.CodeAnalysis.Diagnostics.SuppressMessageAttributeState.IsDiagnosticSuppressed(Diagnostic diagnostic, SuppressMessageInfo& info) in /_/src/Compilers/Core/Portable/DiagnosticAnalyzer/SuppressMessageAttributeState.cs:line 163
   at Microsoft.CodeAnalysis.Diagnostics.SuppressMessageAttributeState.ApplySourceSuppressions(Diagnostic diagnostic) in /_/src/Compilers/Core/Portable/DiagnosticAnalyzer/SuppressMessageAttributeState.cs:line 120
   at Microsoft.CodeAnalysis.GeneratorDriver.FilterDiagnostics(Compilation compilation, ImmutableArray`1 generatorDiagnostics, DiagnosticBag driverDiagnostics, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 430
   at Microsoft.CodeAnalysis.GeneratorDriver.RunGeneratorsCore(Compilation compilation, DiagnosticBag diagnosticsBag, Func`2 generatorFilter, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 326
   at Microsoft.CodeAnalysis.GeneratorDriver.RunGenerators(Compilation compilation, Func`2 generatorFilter, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 62
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.ComputeNewGeneratorInfoInCurrentProcessAsync(SolutionCompilationState compilationState, Compilation compilationWithoutGeneratedFiles, TextDocumentStates`1 oldGeneratedDocuments, GeneratorDriver generatorDriver, Compilation compilationWithStaleGeneratedTrees, GeneratedDocumentCreationPolicy creationPolicy, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker_Generators.cs:line 298
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.AddExistingOrComputeNewGeneratorInfoAsync(CreationPolicy creationPolicy, SolutionCompilationState compilationState, Compilation compilationWithoutGeneratedFiles, CompilationTrackerGeneratorInfo generatorInfo, Compilation compilationWithStaleGeneratedTrees, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker_Generators.cs:line 66
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__FinalizeCompilationWorkerAsync|4>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 583
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__FinalizeCompilationAsync|3>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 455
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__BuildFinalStateAsync|0>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 305
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.GetOrBuildFinalStateAsync(SolutionCompilationState compilationState, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 267
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.GetCompilationSlowAsync(SolutionCompilationState compilationState, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 238
   at Microsoft.CodeAnalysis.Shared.Extensions.ProjectExtensions.GetRequiredCompilationAsync(Project project, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/ProjectExtensions.cs:line 96
   at Microsoft.CodeAnalysis.Document.<>c__DisplayClass28_0.<<GetSemanticModelHelperAsync>g__GetSemanticModelWorkerAsync|0>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/Document.cs:line 351
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.Document.GetSemanticModelHelperAsync(Boolean disableNullableAnalysis, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/Document.cs:line 331
   at Microsoft.CodeAnalysis.Shared.Extensions.DocumentExtensions.GetRequiredSemanticModelAsync(Document document, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/DocumentExtensions.cs:line 38
   at Microsoft.CodeAnalysis.SemanticDocument.CreateAsync(Document document, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Utilities/SemanticDocument.cs:line 22
   at Microsoft.CodeAnalysis.CSharp.ExtractMethod.CSharpExtractMethodService.CSharpSelectionResult.CreateAsync(SemanticDocument document, FinalSelectionInfo selectionInfo, CancellationToken cancellationToken) in /_/src/Features/CSharp/Portable/ExtractMethod/CSharpSelectionResult.cs:line 38
   at Microsoft.CodeAnalysis.CSharp.ExtractMethod.CSharpExtractMethodService.CSharpSelectionValidator.CreateSelectionResultAsync(FinalSelectionInfo selectionInfo, CancellationToken cancellationToken) in /_/src/Features/CSharp/Portable/ExtractMethod/CSharpSelectionValidator.cs:line 93
   at Microsoft.CodeAnalysis.ExtractMethod.AbstractExtractMethodService`3.SelectionValidator.GetValidSelectionAsync(CancellationToken cancellationToken) in /_/src/Features/Core/Portable/ExtractMethod/SelectionValidator.cs:line 56
   at Microsoft.CodeAnalysis.ExtractMethod.AbstractExtractMethodService`3.ExtractMethodAsync(Document document, TextSpan textSpan, Boolean localFunction, ExtractMethodGenerationOptions options, CancellationToken cancellationToken) in /_/src/Features/Core/Portable/ExtractMethod/AbstractExtractMethodService.cs:line 40
   at Microsoft.CodeAnalysis.CodeRefactorings.ExtractMethod.ExtractMethodCodeRefactoringProvider.ExtractMethodAsync(Document document, TextSpan textSpan, ExtractMethodGenerationOptions extractOptions, CancellationToken cancellationToken) in /_/src/Features/Core/Portable/CodeRefactorings/ExtractMethod/AbstractExtractMethodCodeRefactoringProvider.cs:line 72
   at Microsoft.CodeAnalysis.CodeRefactorings.ExtractMethod.ExtractMethodCodeRefactoringProvider.GetCodeActionsAsync(Document document, TextSpan textSpan, ExtractMethodGenerationOptions extractOptions, CancellationToken cancellationToken) in /_/src/Features/Core/Portable/CodeRefactorings/ExtractMethod/AbstractExtractMethodCodeRefactoringProvider.cs:line 60
   at Microsoft.CodeAnalysis.CodeRefactorings.ExtractMethod.ExtractMethodCodeRefactoringProvider.ComputeRefactoringsAsync(CodeRefactoringContext context) in /_/src/Features/Core/Portable/CodeRefactorings/ExtractMethod/AbstractExtractMethodCodeRefactoringProvider.cs:line 49
   at Microsoft.CodeAnalysis.CodeRefactorings.CodeRefactoringService.<>c__DisplayClass12_0.<<GetRefactoringFromProviderAsync>b__0>d.MoveNext() in /_/src/Features/Core/Portable/CodeRefactorings/CodeRefactoringService.cs:line 272
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.Extensions.IExtensionManagerExtensions.PerformFunctionAsync[T](IExtensionManager extensionManager, Object extension, Func`2 function, T defaultValue, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/ExtensionManager/IExtensionManagerExtensions.cs:line 80
2026-01-14 19:57:01.487 [error] [textDocument/codeAction] [LanguageServerExtensionManager] Microsoft.CodeAnalysis.CodeRefactorings.ExtractMethod.ExtractMethodCodeRefactoringProvider threw an exception. System.ArgumentException: SyntaxTree is not part of the compilation (Parameter 'syntaxTree')
   at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.CommonGetSemanticModel(SyntaxTree syntaxTree, SemanticModelOptions options) in /_/src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs:line 4065
   at Microsoft.CodeAnalysis.Diagnostics.SuppressMessageAttributeState.IsDiagnosticSuppressed(Diagnostic diagnostic, SuppressMessageInfo& info) in /_/src/Compilers/Core/Portable/DiagnosticAnalyzer/SuppressMessageAttributeState.cs:line 163
   at Microsoft.CodeAnalysis.Diagnostics.SuppressMessageAttributeState.ApplySourceSuppressions(Diagnostic diagnostic) in /_/src/Compilers/Core/Portable/DiagnosticAnalyzer/SuppressMessageAttributeState.cs:line 120
   at Microsoft.CodeAnalysis.GeneratorDriver.FilterDiagnostics(Compilation compilation, ImmutableArray`1 generatorDiagnostics, DiagnosticBag driverDiagnostics, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 430
   at Microsoft.CodeAnalysis.GeneratorDriver.RunGeneratorsCore(Compilation compilation, DiagnosticBag diagnosticsBag, Func`2 generatorFilter, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 326
   at Microsoft.CodeAnalysis.GeneratorDriver.RunGenerators(Compilation compilation, Func`2 generatorFilter, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 62
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.ComputeNewGeneratorInfoInCurrentProcessAsync(SolutionCompilationState compilationState, Compilation compilationWithoutGeneratedFiles, TextDocumentStates`1 oldGeneratedDocuments, GeneratorDriver generatorDriver, Compilation compilationWithStaleGeneratedTrees, GeneratedDocumentCreationPolicy creationPolicy, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker_Generators.cs:line 298
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.AddExistingOrComputeNewGeneratorInfoAsync(CreationPolicy creationPolicy, SolutionCompilationState compilationState, Compilation compilationWithoutGeneratedFiles, CompilationTrackerGeneratorInfo generatorInfo, Compilation compilationWithStaleGeneratedTrees, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker_Generators.cs:line 66
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__FinalizeCompilationWorkerAsync|4>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 583
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__FinalizeCompilationAsync|3>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 455
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__BuildFinalStateAsync|0>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 305
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.GetOrBuildFinalStateAsync(SolutionCompilationState compilationState, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 267
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.GetCompilationSlowAsync(SolutionCompilationState compilationState, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 238
   at Microsoft.CodeAnalysis.Shared.Extensions.ProjectExtensions.GetRequiredCompilationAsync(Project project, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/ProjectExtensions.cs:line 96
   at Microsoft.CodeAnalysis.Document.<>c__DisplayClass28_0.<<GetSemanticModelHelperAsync>g__GetSemanticModelWorkerAsync|0>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/Document.cs:line 351
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.Document.GetSemanticModelHelperAsync(Boolean disableNullableAnalysis, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/Document.cs:line 331
   at Microsoft.CodeAnalysis.Shared.Extensions.DocumentExtensions.GetRequiredSemanticModelAsync(Document document, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/DocumentExtensions.cs:line 38
   at Microsoft.CodeAnalysis.SemanticDocument.CreateAsync(Document document, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Utilities/SemanticDocument.cs:line 22
   at Microsoft.CodeAnalysis.CSharp.ExtractMethod.CSharpExtractMethodService.CSharpSelectionResult.CreateAsync(SemanticDocument document, FinalSelectionInfo selectionInfo, CancellationToken cancellationToken) in /_/src/Features/CSharp/Portable/ExtractMethod/CSharpSelectionResult.cs:line 38
   at Microsoft.CodeAnalysis.CSharp.ExtractMethod.CSharpExtractMethodService.CSharpSelectionValidator.CreateSelectionResultAsync(FinalSelectionInfo selectionInfo, CancellationToken cancellationToken) in /_/src/Features/CSharp/Portable/ExtractMethod/CSharpSelectionValidator.cs:line 93
   at Microsoft.CodeAnalysis.ExtractMethod.AbstractExtractMethodService`3.SelectionValidator.GetValidSelectionAsync(CancellationToken cancellationToken) in /_/src/Features/Core/Portable/ExtractMethod/SelectionValidator.cs:line 56
   at Microsoft.CodeAnalysis.ExtractMethod.AbstractExtractMethodService`3.ExtractMethodAsync(Document document, TextSpan textSpan, Boolean localFunction, ExtractMethodGenerationOptions options, CancellationToken cancellationToken) in /_/src/Features/Core/Portable/ExtractMethod/AbstractExtractMethodService.cs:line 40
   at Microsoft.CodeAnalysis.CodeRefactorings.ExtractMethod.ExtractMethodCodeRefactoringProvider.ExtractMethodAsync(Document document, TextSpan textSpan, ExtractMethodGenerationOptions extractOptions, CancellationToken cancellationToken) in /_/src/Features/Core/Portable/CodeRefactorings/ExtractMethod/AbstractExtractMethodCodeRefactoringProvider.cs:line 72
   at Microsoft.CodeAnalysis.CodeRefactorings.ExtractMethod.ExtractMethodCodeRefactoringProvider.GetCodeActionsAsync(Document document, TextSpan textSpan, ExtractMethodGenerationOptions extractOptions, CancellationToken cancellationToken) in /_/src/Features/Core/Portable/CodeRefactorings/ExtractMethod/AbstractExtractMethodCodeRefactoringProvider.cs:line 60
   at Microsoft.CodeAnalysis.CodeRefactorings.ExtractMethod.ExtractMethodCodeRefactoringProvider.ComputeRefactoringsAsync(CodeRefactoringContext context) in /_/src/Features/Core/Portable/CodeRefactorings/ExtractMethod/AbstractExtractMethodCodeRefactoringProvider.cs:line 49
   at Microsoft.CodeAnalysis.CodeRefactorings.CodeRefactoringService.<>c__DisplayClass12_0.<<GetRefactoringFromProviderAsync>b__0>d.MoveNext() in /_/src/Features/Core/Portable/CodeRefactorings/CodeRefactoringService.cs:line 272
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.Extensions.IExtensionManagerExtensions.PerformFunctionAsync[T](IExtensionManager extensionManager, Object extension, Func`2 function, T defaultValue, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/ExtensionManager/IExtensionManagerExtensions.cs:line 80
2026-01-14 19:57:04.502 [error] [codeAction/resolve] [LSP] System.ArgumentException: SyntaxTree is not part of the compilation (Parameter 'syntaxTree')
   at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.CommonGetSemanticModel(SyntaxTree syntaxTree, SemanticModelOptions options) in /_/src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs:line 4065
   at Microsoft.CodeAnalysis.Diagnostics.SuppressMessageAttributeState.IsDiagnosticSuppressed(Diagnostic diagnostic, SuppressMessageInfo& info) in /_/src/Compilers/Core/Portable/DiagnosticAnalyzer/SuppressMessageAttributeState.cs:line 163
   at Microsoft.CodeAnalysis.Diagnostics.SuppressMessageAttributeState.ApplySourceSuppressions(Diagnostic diagnostic) in /_/src/Compilers/Core/Portable/DiagnosticAnalyzer/SuppressMessageAttributeState.cs:line 120
   at Microsoft.CodeAnalysis.GeneratorDriver.FilterDiagnostics(Compilation compilation, ImmutableArray`1 generatorDiagnostics, DiagnosticBag driverDiagnostics, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 430
   at Microsoft.CodeAnalysis.GeneratorDriver.RunGeneratorsCore(Compilation compilation, DiagnosticBag diagnosticsBag, Func`2 generatorFilter, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 326
   at Microsoft.CodeAnalysis.GeneratorDriver.RunGenerators(Compilation compilation, Func`2 generatorFilter, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/SourceGeneration/GeneratorDriver.cs:line 62
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.ComputeNewGeneratorInfoInCurrentProcessAsync(SolutionCompilationState compilationState, Compilation compilationWithoutGeneratedFiles, TextDocumentStates`1 oldGeneratedDocuments, GeneratorDriver generatorDriver, Compilation compilationWithStaleGeneratedTrees, GeneratedDocumentCreationPolicy creationPolicy, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker_Generators.cs:line 298
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.AddExistingOrComputeNewGeneratorInfoAsync(CreationPolicy creationPolicy, SolutionCompilationState compilationState, Compilation compilationWithoutGeneratedFiles, CompilationTrackerGeneratorInfo generatorInfo, Compilation compilationWithStaleGeneratedTrees, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker_Generators.cs:line 66
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__FinalizeCompilationWorkerAsync|4>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 583
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__FinalizeCompilationAsync|3>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 455
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.<>c__DisplayClass25_0.<<GetOrBuildFinalStateAsync>g__BuildFinalStateAsync|0>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 305
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.GetOrBuildFinalStateAsync(SolutionCompilationState compilationState, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 267
   at Microsoft.CodeAnalysis.SolutionCompilationState.RegularCompilationTracker.GetCompilationSlowAsync(SolutionCompilationState compilationState, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/SolutionCompilationState.RegularCompilationTracker.cs:line 238
   at Microsoft.CodeAnalysis.Shared.Extensions.ProjectExtensions.GetRequiredCompilationAsync(Project project, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/ProjectExtensions.cs:line 96
   at Microsoft.CodeAnalysis.Document.<>c__DisplayClass28_0.<<GetSemanticModelHelperAsync>g__GetSemanticModelWorkerAsync|0>d.MoveNext() in /_/src/Workspaces/Core/Portable/Workspace/Solution/Document.cs:line 351
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.Document.GetSemanticModelHelperAsync(Boolean disableNullableAnalysis, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/Document.cs:line 331
   at Microsoft.CodeAnalysis.Document.GetSemanticModelAsync(SemanticModelOptions options, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/Document.cs:line 286
   at Microsoft.CodeAnalysis.Document.GetRequiredNullableDisabledSemanticModelAsync(CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Workspace/Solution/Document.cs:line 300
   at Microsoft.CodeAnalysis.Editing.ImportAdderService.AddImportDirectivesFromSymbolAnnotationsAsync(Document document, IEnumerable`1 annotatedNodes, IAddImportsService addImportsService, SyntaxGenerator generator, AddImportPlacementOptions options, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Editing/ImportAdderService.cs:line 185
   at Microsoft.CodeAnalysis.Editing.ImportAdderService.AddImportsAsync(Document document, IEnumerable`1 spans, Strategy strategy, AddImportPlacementOptions options, CancellationToken cancellationToken) in /_/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Editing/ImportAdderService.cs:line 58
   at Microsoft.CodeAnalysis.Editing.ImportAdder.AddImportsFromSymbolAnnotationAsync(Document document, SyntaxAnnotation annotation, AddImportPlacementOptions options, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/Editing/ImportAdder.cs:line 95
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.<>c.<<RunCleanupPassesInOrderAsync>b__78_1>d.MoveNext() in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction_Cleanup.cs:line 203
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.Threading.ProducerConsumer`1.<>c__DisplayClass11_0`3.<<RunParallelChannelAsync>b__2>d.MoveNext() in /_/src/Dependencies/Threading/ProducerConsumer.cs:line 238
--- End of stack trace from previous location ---
   at System.Threading.Tasks.Parallel.<>c__57`1.<<ForEachAsync>b__57_0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.Threading.ProducerConsumer`1.<>c__14`2.<<RunChannelAsync>b__14_3>d.MoveNext() in /_/src/Dependencies/Threading/ProducerConsumer.cs:line 367
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.Threading.ProducerConsumer`1.PerformActionAndCloseWriterAsync[TArgs](Func`3 action, TArgs args, ChannelWriter`1 writer, CancellationToken cancellationToken) in /_/src/Dependencies/Threading/ProducerConsumer.cs:line 384
   at Microsoft.CodeAnalysis.Threading.ProducerConsumer`1.RunChannelAsync[TArgs,TResult](ProducerConsumerOptions options, Func`4 produceItems, Func`4 consumeItems, TArgs args, CancellationToken cancellationToken) in /_/src/Dependencies/Threading/ProducerConsumer.cs:line 344
   at Microsoft.CodeAnalysis.Threading.ProducerConsumer`1.RunParallelAsync[TSource,TArgs](IAsyncEnumerable`1 source, Func`5 produceItems, TArgs args, CancellationToken cancellationToken) in /_/src/Dependencies/Threading/ProducerConsumer.cs:line 211
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.<>c__DisplayClass78_0.<<RunCleanupPassesInOrderAsync>g__RunParallelCleanupPassAsync|0>d.MoveNext() in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction_Cleanup.cs:line 187
--- End of stack trace from previous location ---
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.RunCleanupPassesInOrderAsync(Solution solution, ImmutableArray`1 documentIdsAndOptions, IProgress`1 progress, ImmutableArray`1 passes, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction_Cleanup.cs:line 175
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.CleanSyntaxAndSemanticsAsync(Solution originalSolution, Solution changedSolution, IProgress`1 progress, ImmutableArray`1 passes, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction_Cleanup.cs:line 121
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.PostProcessChangesAsync(Solution originalSolution, Solution changedSolution, IProgress`1 progress, CodeActionCleanup cleanup, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction_Cleanup.cs:line 104
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.PostProcessAsync(Solution originalSolution, IEnumerable`1 operations, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction.cs:line 435
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.GetOperationsCoreAsync(Solution originalSolution, IProgress`1 progress, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction.cs:line 251
   at Microsoft.CodeAnalysis.LanguageServer.Handler.CodeActionResolveHandler.HandleRequestAsync(CodeAction codeAction, RequestContext context, CancellationToken cancellationToken) in /_/src/LanguageServer/Protocol/Handler/CodeActions/CodeActionResolveHandler.cs:line 89
   at Microsoft.CommonLanguageServerProtocol.Framework.QueueItem`1.StartRequestAsync[TRequest,TResponse](TRequest request, TRequestContext context, IMethodHandler handler, String language, CancellationToken cancellationToken) in /_/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/QueueItem.cs:line 192
2026-01-14 19:57:04.506 [error] Request codeAction/resolve failed.
  Message: SyntaxTree is not part of the compilation (Parameter 'syntaxTree')
  Code: -32000 
[object Object]

Extension version: 2.111.2
VS Code version: Code 1.108.0 (94e8ae2b28cb5cc932b86e1070569c4463565c37, 2026-01-08T13:53:10.781Z)
OS version: Windows_NT x64 10.0.26200
Modes:

System Info
Item Value
CPUs AMD Ryzen Threadripper PRO 7995WX 96-Cores (64 x 2500)
GPU Status 2d_canvas: enabled
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
trees_in_viz: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) undefined
Memory (System) 255.51GB (141.44GB free)
Process Argv --folder-uri file:///e%3A/VS.devLoop --crash-reporter-id 4c2231a9-269d-4864-86f5-50506236c91d
Screen Reader no
VM 0%
A/B Experiments
vsliv368:30146709
binariesv615:30325510
nativeloc1:31344060
dwcopilot:31170013
dwoutputs:31242946
copilot_t_ci:31333650
e5gg6876:31282496
pythonrdcb7:31342333
6518g693:31436602
aj953862:31281341
6abeh943:31336334
envsactivate1:31353494
cloudbuttont:31379625
3efgi100_wstrepl:31403338
use-responses-api:31390855
defaultusage:31403421
ddidtcf:31399634
je187915:31401257
ec5jj548:31422691
codexv2_fim_v2_1_11:31442072
metis_rerank_treatment1:31422731
cmp-ext-treat:31426748
cp_cls_t_966_ss:31446430
c0683394:31419495
ge8j1254_inline_auto_hint_haiku:31431912
nes-autoexp-10:31446583
a5gib710:31434435
be4bg873_opus_45:31446805
no_request_with_suggest:31445372
rename_enabled:31436409
nes-joint-1a:31438279
7a04d226_do_not_restore_last_panel_session:31438103
anthropic_thinking_t:31432745
cp_cls_t_1081:31443828
copilot-nes-oct-trt:31432596
nes-jump-1122_internal-ppe-copy:31446730
nes-slash-models-on:31441832
nes-set-to-on:31441941
a43f0576c:31442824
ts_provider_disabled:31446105

Additional context
Add any other context about the problem here.

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions