From 87f2e3a837c96dbabc5002ebaa8ff09910314252 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Tue, 3 Feb 2026 00:31:37 +0000
Subject: [PATCH 1/4] Initial plan
From 9d78187eb4351a4395b96dff5ac4a5b8bc89cac8 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Tue, 3 Feb 2026 00:37:49 +0000
Subject: [PATCH 2/4] Resolve RS1038: Separate code fix providers into new
assembly
Co-authored-by: BenjaminMichaelis <22186029+BenjaminMichaelis@users.noreply.github.com>
---
.editorconfig | 8 ----
IntelliTect.Analyzer.sln | 42 +++++++++++++++++++
.../AsyncVoid.cs | 0
.../AttributesOnSeparateLines.cs | 0
.../IntelliTect.Analyzer.CodeFixes.csproj | 21 ++++++++++
.../NamingFieldPascalUnderscore.cs | 0
.../NamingIdentifierPascal.cs | 0
.../IntelliTect.Analyzer.Tests.csproj | 1 +
.../IntelliTect.Analyzer.csproj | 7 +++-
9 files changed, 70 insertions(+), 9 deletions(-)
rename IntelliTect.Analyzer/{IntelliTect.Analyzer/CodeFixes => IntelliTect.Analyzer.CodeFixes}/AsyncVoid.cs (100%)
rename IntelliTect.Analyzer/{IntelliTect.Analyzer/CodeFixes => IntelliTect.Analyzer.CodeFixes}/AttributesOnSeparateLines.cs (100%)
create mode 100644 IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/IntelliTect.Analyzer.CodeFixes.csproj
rename IntelliTect.Analyzer/{IntelliTect.Analyzer/CodeFixes => IntelliTect.Analyzer.CodeFixes}/NamingFieldPascalUnderscore.cs (100%)
rename IntelliTect.Analyzer/{IntelliTect.Analyzer/CodeFixes => IntelliTect.Analyzer.CodeFixes}/NamingIdentifierPascal.cs (100%)
diff --git a/.editorconfig b/.editorconfig
index 258b747e..806489ec 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -168,11 +168,3 @@ dotnet_diagnostic.RCS1170.severity = warning
# RCS1213: Remove unused member declaration.
dotnet_diagnostic.RCS1213.severity = warning
-
-###############################
-# Analyzer Package Suppressions
-###############################
-# RS1038: Compiler extensions should not be implemented in assemblies with compiler-provided references
-# This rule is suppressed because our analyzer and code fix providers are in the same assembly,
-# which is a common pattern. The code fix providers require Microsoft.CodeAnalysis.Workspaces.
-dotnet_diagnostic.RS1038.severity = none
diff --git a/IntelliTect.Analyzer.sln b/IntelliTect.Analyzer.sln
index e5e46530..6a7ad990 100644
--- a/IntelliTect.Analyzer.sln
+++ b/IntelliTect.Analyzer.sln
@@ -18,24 +18,66 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IntelliTect.Analyzer.Integration.Tests", "IntelliTect.Analyzer\IntelliTect.Analyzer.Integration.Tests\IntelliTect.Analyzer.Integration.Tests.csproj", "{25B557AC-D6C9-4719-A977-3DC1666C5347}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IntelliTect.Analyzer.CodeFixes", "IntelliTect.Analyzer\IntelliTect.Analyzer.CodeFixes\IntelliTect.Analyzer.CodeFixes.csproj", "{4B831B22-D64D-4BE0-8BDC-E69F728187BB}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{B21556AE-ABCF-41F9-8585-3C32DE919638}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B21556AE-ABCF-41F9-8585-3C32DE919638}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B21556AE-ABCF-41F9-8585-3C32DE919638}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {B21556AE-ABCF-41F9-8585-3C32DE919638}.Debug|x64.Build.0 = Debug|Any CPU
+ {B21556AE-ABCF-41F9-8585-3C32DE919638}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {B21556AE-ABCF-41F9-8585-3C32DE919638}.Debug|x86.Build.0 = Debug|Any CPU
{B21556AE-ABCF-41F9-8585-3C32DE919638}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B21556AE-ABCF-41F9-8585-3C32DE919638}.Release|Any CPU.Build.0 = Release|Any CPU
+ {B21556AE-ABCF-41F9-8585-3C32DE919638}.Release|x64.ActiveCfg = Release|Any CPU
+ {B21556AE-ABCF-41F9-8585-3C32DE919638}.Release|x64.Build.0 = Release|Any CPU
+ {B21556AE-ABCF-41F9-8585-3C32DE919638}.Release|x86.ActiveCfg = Release|Any CPU
+ {B21556AE-ABCF-41F9-8585-3C32DE919638}.Release|x86.Build.0 = Release|Any CPU
{2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Debug|x64.Build.0 = Debug|Any CPU
+ {2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Debug|x86.Build.0 = Debug|Any CPU
{2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Release|x64.ActiveCfg = Release|Any CPU
+ {2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Release|x64.Build.0 = Release|Any CPU
+ {2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Release|x86.ActiveCfg = Release|Any CPU
+ {2B4BFC2E-4BD4-4651-A0F4-E926EF246ADE}.Release|x86.Build.0 = Release|Any CPU
{25B557AC-D6C9-4719-A977-3DC1666C5347}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{25B557AC-D6C9-4719-A977-3DC1666C5347}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {25B557AC-D6C9-4719-A977-3DC1666C5347}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {25B557AC-D6C9-4719-A977-3DC1666C5347}.Debug|x64.Build.0 = Debug|Any CPU
+ {25B557AC-D6C9-4719-A977-3DC1666C5347}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {25B557AC-D6C9-4719-A977-3DC1666C5347}.Debug|x86.Build.0 = Debug|Any CPU
{25B557AC-D6C9-4719-A977-3DC1666C5347}.Release|Any CPU.ActiveCfg = Release|Any CPU
{25B557AC-D6C9-4719-A977-3DC1666C5347}.Release|Any CPU.Build.0 = Release|Any CPU
+ {25B557AC-D6C9-4719-A977-3DC1666C5347}.Release|x64.ActiveCfg = Release|Any CPU
+ {25B557AC-D6C9-4719-A977-3DC1666C5347}.Release|x64.Build.0 = Release|Any CPU
+ {25B557AC-D6C9-4719-A977-3DC1666C5347}.Release|x86.ActiveCfg = Release|Any CPU
+ {25B557AC-D6C9-4719-A977-3DC1666C5347}.Release|x86.Build.0 = Release|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Debug|x64.Build.0 = Debug|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Debug|x86.Build.0 = Debug|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Release|x64.ActiveCfg = Release|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Release|x64.Build.0 = Release|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Release|x86.ActiveCfg = Release|Any CPU
+ {4B831B22-D64D-4BE0-8BDC-E69F728187BB}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer/CodeFixes/AsyncVoid.cs b/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/AsyncVoid.cs
similarity index 100%
rename from IntelliTect.Analyzer/IntelliTect.Analyzer/CodeFixes/AsyncVoid.cs
rename to IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/AsyncVoid.cs
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer/CodeFixes/AttributesOnSeparateLines.cs b/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/AttributesOnSeparateLines.cs
similarity index 100%
rename from IntelliTect.Analyzer/IntelliTect.Analyzer/CodeFixes/AttributesOnSeparateLines.cs
rename to IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/AttributesOnSeparateLines.cs
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/IntelliTect.Analyzer.CodeFixes.csproj b/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/IntelliTect.Analyzer.CodeFixes.csproj
new file mode 100644
index 00000000..e07a481f
--- /dev/null
+++ b/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/IntelliTect.Analyzer.CodeFixes.csproj
@@ -0,0 +1,21 @@
+
+
+
+ netstandard2.0
+ false
+
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer/CodeFixes/NamingFieldPascalUnderscore.cs b/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/NamingFieldPascalUnderscore.cs
similarity index 100%
rename from IntelliTect.Analyzer/IntelliTect.Analyzer/CodeFixes/NamingFieldPascalUnderscore.cs
rename to IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/NamingFieldPascalUnderscore.cs
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer/CodeFixes/NamingIdentifierPascal.cs b/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/NamingIdentifierPascal.cs
similarity index 100%
rename from IntelliTect.Analyzer/IntelliTect.Analyzer/CodeFixes/NamingIdentifierPascal.cs
rename to IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/NamingIdentifierPascal.cs
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer.Test/IntelliTect.Analyzer.Tests.csproj b/IntelliTect.Analyzer/IntelliTect.Analyzer.Test/IntelliTect.Analyzer.Tests.csproj
index b7183ae6..05d461ee 100644
--- a/IntelliTect.Analyzer/IntelliTect.Analyzer.Test/IntelliTect.Analyzer.Tests.csproj
+++ b/IntelliTect.Analyzer/IntelliTect.Analyzer.Test/IntelliTect.Analyzer.Tests.csproj
@@ -22,6 +22,7 @@
+
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer/IntelliTect.Analyzer.csproj b/IntelliTect.Analyzer/IntelliTect.Analyzer/IntelliTect.Analyzer.csproj
index e430095d..0ca21a7a 100644
--- a/IntelliTect.Analyzer/IntelliTect.Analyzer/IntelliTect.Analyzer.csproj
+++ b/IntelliTect.Analyzer/IntelliTect.Analyzer/IntelliTect.Analyzer.csproj
@@ -23,7 +23,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
@@ -36,9 +36,14 @@
+
+
+
+
+
From 82c68092a94e1f9cc1243e175ae9c25fcf32788d Mon Sep 17 00:00:00 2001
From: Benjamin Michaelis
Date: Mon, 2 Feb 2026 17:30:58 -0800
Subject: [PATCH 3/4] Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---
.../IntelliTect.Analyzer.CodeFixes.csproj | 1 +
1 file changed, 1 insertion(+)
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/IntelliTect.Analyzer.CodeFixes.csproj b/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/IntelliTect.Analyzer.CodeFixes.csproj
index e07a481f..6c5e0348 100644
--- a/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/IntelliTect.Analyzer.CodeFixes.csproj
+++ b/IntelliTect.Analyzer/IntelliTect.Analyzer.CodeFixes/IntelliTect.Analyzer.CodeFixes.csproj
@@ -3,6 +3,7 @@
netstandard2.0
false
+ false
From 3e8240a5c533580178bba2ea3dfb34915763a945 Mon Sep 17 00:00:00 2001
From: Benjamin Michaelis
Date: Mon, 2 Feb 2026 17:31:19 -0800
Subject: [PATCH 4/4] Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---
.../IntelliTect.Analyzer/IntelliTect.Analyzer.csproj | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/IntelliTect.Analyzer/IntelliTect.Analyzer/IntelliTect.Analyzer.csproj b/IntelliTect.Analyzer/IntelliTect.Analyzer/IntelliTect.Analyzer.csproj
index 0ca21a7a..c6ecace4 100644
--- a/IntelliTect.Analyzer/IntelliTect.Analyzer/IntelliTect.Analyzer.csproj
+++ b/IntelliTect.Analyzer/IntelliTect.Analyzer/IntelliTect.Analyzer.csproj
@@ -43,7 +43,7 @@
-
+