diff --git a/eng/pipelines/templates/BuildAndTest.yml b/eng/pipelines/templates/BuildAndTest.yml
index ced3ce0afb3..e3ec5bcd7dd 100644
--- a/eng/pipelines/templates/BuildAndTest.yml
+++ b/eng/pipelines/templates/BuildAndTest.yml
@@ -68,6 +68,10 @@ steps:
condition: always()
continueOnError: true
+ - script: $(Build.SourcesDirectory)/.dotnet/dotnet publish
+ workingDirectory: $(Build.SourcesDirectory)/test/Libraries/Microsoft.Extensions.AotCompatibility.TestApp
+ displayName: Publish AOT Test
+
- ${{ if ne(parameters.skipQualityGates, 'true') }}:
- ${{ if eq(parameters.runAsPublic, 'true') }}:
- task: PublishPipelineArtifact@1
diff --git a/src/Libraries/Microsoft.Extensions.Compliance.Redaction/Microsoft.Extensions.Compliance.Redaction.csproj b/src/Libraries/Microsoft.Extensions.Compliance.Redaction/Microsoft.Extensions.Compliance.Redaction.csproj
index 79fbecf8c1e..f762e3ceee9 100644
--- a/src/Libraries/Microsoft.Extensions.Compliance.Redaction/Microsoft.Extensions.Compliance.Redaction.csproj
+++ b/src/Libraries/Microsoft.Extensions.Compliance.Redaction/Microsoft.Extensions.Compliance.Redaction.csproj
@@ -7,13 +7,14 @@
true
+ true
true
true
true
true
true
-
+
false
$(NoWarn);IL2026
diff --git a/test/Libraries/Microsoft.Extensions.AI.AotCompatibility.TestApp/Microsoft.Extensions.AI.AotCompatibility.TestApp.csproj b/test/Libraries/Microsoft.Extensions.AI.AotCompatibility.TestApp/Microsoft.Extensions.AI.AotCompatibility.TestApp.csproj
deleted file mode 100644
index 183cd150937..00000000000
--- a/test/Libraries/Microsoft.Extensions.AI.AotCompatibility.TestApp/Microsoft.Extensions.AI.AotCompatibility.TestApp.csproj
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- Exe
- $(LatestTargetFramework)
- true
- false
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/test/Libraries/Microsoft.Extensions.AI.AotCompatibility.TestApp/Program.cs b/test/Libraries/Microsoft.Extensions.AI.AotCompatibility.TestApp/Program.cs
deleted file mode 100644
index b518dfa7739..00000000000
--- a/test/Libraries/Microsoft.Extensions.AI.AotCompatibility.TestApp/Program.cs
+++ /dev/null
@@ -1,22 +0,0 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-
-#pragma warning disable S125 // Remove this commented out code
-
-using Microsoft.Extensions.AI;
-
-// Use types from each library.
-
-// Microsoft.Extensions.AI.Ollama
-using var b = new OllamaChatClient("http://localhost:11434", "llama3.2");
-
-// Microsoft.Extensions.AI.AzureAIInference
-// using var a = new Azure.AI.Inference.ChatCompletionClient(new Uri("http://localhost"), new("apikey")); // uncomment once warnings in Azure.AI.Inference are addressed
-
-// Microsoft.Extensions.AI.OpenAI
-// using var c = new OpenAI.OpenAIClient("apikey").AsChatClient("gpt-4o-mini"); // uncomment once warnings in OpenAI are addressed
-
-// Microsoft.Extensions.AI
-AIFunctionFactory.Create(() => { });
-
-System.Console.WriteLine("Success!");
diff --git a/test/Libraries/Microsoft.Extensions.AotCompatibility.TestApp/Microsoft.Extensions.AotCompatibility.TestApp.csproj b/test/Libraries/Microsoft.Extensions.AotCompatibility.TestApp/Microsoft.Extensions.AotCompatibility.TestApp.csproj
new file mode 100644
index 00000000000..07bf93e044c
--- /dev/null
+++ b/test/Libraries/Microsoft.Extensions.AotCompatibility.TestApp/Microsoft.Extensions.AotCompatibility.TestApp.csproj
@@ -0,0 +1,33 @@
+
+
+
+ Exe
+ $(LatestTargetFramework)
+
+
+ true
+ false
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/Libraries/Microsoft.Extensions.AotCompatibility.TestApp/Program.cs b/test/Libraries/Microsoft.Extensions.AotCompatibility.TestApp/Program.cs
new file mode 100644
index 00000000000..c8b0819a744
--- /dev/null
+++ b/test/Libraries/Microsoft.Extensions.AotCompatibility.TestApp/Program.cs
@@ -0,0 +1,4 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+System.Console.WriteLine("Success!");