Skip to content

.Net: Semantic Kernel -> Agent Framework - Migration/Samples Update (AF 1.0 Compatible)#13852

Open
rogerbarreto wants to merge 8 commits intomicrosoft:mainfrom
rogerbarreto:rbarreto/update-af-migration-to-1.0
Open

.Net: Semantic Kernel -> Agent Framework - Migration/Samples Update (AF 1.0 Compatible)#13852
rogerbarreto wants to merge 8 commits intomicrosoft:mainfrom
rogerbarreto:rbarreto/update-af-migration-to-1.0

Conversation

@rogerbarreto
Copy link
Copy Markdown
Member

Description

Updates the SK → Agent Framework migration document, samples, and bridge code from AF preview (1.0.0-preview.251009.1) to GA (1.0.0).

Breaking changes addressed

Preview API AF 1.0 GA Scope
AgentThread AgentSession Core type rename
GetNewThread() CreateSessionAsync() Now async
AgentRunResponse AgentResponse Return type rename
AgentRunResponseUpdate AgentResponseUpdate Streaming type rename
CreateAIAgent() AsAIAgent() Extension method rename
AssistantClient.CreateAIAgentAsync() Removed Redirect to Responses API
PersistentAgentsClient Obsolete Use AIProjectClient via Microsoft.Agents.AI.Foundry
Microsoft.Agents.AI.AzureAI Microsoft.Agents.AI.Foundry Package rename
InProcessExecution.StreamAsync RunStreamingAsync Workflow API
AgentRunUpdateEvent AgentResponseUpdateEvent Workflow event
AIAgent.Id (virtual) IdCore (protected virtual) Override pattern

Additional discoveries

  • using OpenAI.Chat; required for ChatClient.AsAIAgent() extension to resolve
  • using OpenAI.Responses; required for ResponsesClient.AsAIAgent() extension to resolve

What changed

Package versions (dotnet/Directory.Packages.props)

  • AF packages updated to 1.0.0
  • Microsoft.Agents.AI.AzureAIMicrosoft.Agents.AI.Foundry

Bridge code (dotnet/src/Agents/Abstractions/AIAgent/)

  • SemanticKernelAIAgent.cs: New Core method overrides (CreateSessionCoreAsync, RunCoreAsync, etc.)
  • SemanticKernelAIAgentThreadSemanticKernelAIAgentSession (extends AgentSession)

31 migration samples (all compile ✅)

  • OpenAI/AzureOpenAI: AsAIAgent, CreateSessionAsync, using OpenAI.Chat;
  • Assistants (8): AF sections rewritten to Responses API
  • Responses (8): Direct ResponsesClient.AsAIAgent()
  • Foundry (4): AIProjectClient.AsAIAgent() via Microsoft.Agents.AI.Foundry
  • Orchestrations (3): RunStreamingAsync, AgentResponseUpdateEvent

Migration document (.github/upgrades/prompts/SemanticKernelToAgentFramework.md)

  • All AF preview API references updated to 1.0 GA patterns

Unit/integration tests (~15 files)

  • Mechanical renames for AgentSession, AgentResponse, CreateSessionAsync

Validation

8 standalone console programs were created and executed against AF 1.0.0 NuGet packages with real API keys, validating all migration patterns end-to-end:

  1. OpenAI Basics (ChatClient → AsAIAgent, CreateSessionAsync, Run/RunStreaming)
  2. OpenAI ToolCall (AIFunctionFactory.Create, tool invocation)
  3. OpenAI DI (ServiceProvider registration)
  4. OpenAI Responses (ResponsesClient.AsAIAgent)
  5. Azure AI Foundry (AIProjectClient.AsAIAgent)
  6. Workflows Handoff (HandoffWorkflowBuilder, InProcessExecution.RunStreamingAsync)
  7. Session Lifecycle (Create, Serialize, Deserialize, multi-turn)
  8. Assistants Migration Path (Responses API as replacement)

rogerbarreto and others added 2 commits April 8, 2026 11:22
- OpenAI/Azure OpenAI Assistants: Rewrite AF sections to use Responses API
  (GetResponsesClient().AsAIAgent()) since Assistants API is deprecated
- Azure AI Foundry: Replace PersistentAgentsClient.CreateAIAgentAsync()
  with AIProjectClient.AsAIAgent() from Microsoft.Agents.AI.Foundry
- Replace GetNewThread() with async CreateSessionAsync()
- Replace ChatClientAgentThread with ChatClientAgentSession
- Remove cleanup code from AF sections (Responses/non-hosted paths
  don't create server-side resources)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Update migration document, samples, and bridge code from Agent Framework
preview (1.0.0-preview.251009.1) to GA (1.0.0).

Breaking changes addressed:
- AgentThread -> AgentSession, GetNewThread() -> CreateSessionAsync()
- AgentRunResponse -> AgentResponse, AgentRunResponseUpdate -> AgentResponseUpdate
- CreateAIAgent() -> AsAIAgent() (extension method renamed)
- OpenAI Assistants extensions removed (redirect to Responses API)
- PersistentAgentsClient obsolete (use AIProjectClient via Microsoft.Agents.AI.Foundry)
- Microsoft.Agents.AI.AzureAI renamed to Microsoft.Agents.AI.Foundry
- InProcessExecution.StreamAsync -> RunStreamingAsync
- AgentRunUpdateEvent -> AgentResponseUpdateEvent

Additional discoveries:
- using OpenAI.Chat required for ChatClient.AsAIAgent() extension
- using OpenAI.Responses required for ResponsesClient.AsAIAgent() extension
- AIAgent.Id no longer virtual, use IdCore override instead
@rogerbarreto rogerbarreto requested a review from a team as a code owner April 8, 2026 11:12
Copilot AI review requested due to automatic review settings April 8, 2026 11:12
@rogerbarreto rogerbarreto changed the title Update Agent Framework migration to 1.0 GA Update SK -> Agent Framework Migration to 1.0 Stable Apr 8, 2026
@rogerbarreto rogerbarreto self-assigned this Apr 8, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request updates the .NET Semantic Kernel to Agent Framework migration guidance, samples, and bridge code to align with Agent Framework 1.0 GA APIs, primarily renaming thread concepts to sessions and updating agent creation and workflow streaming patterns.

Changes:

  • Updated package references from Agent Framework preview packages to 1.0.0 GA, including the Azure AI Foundry package rename.
  • Updated the SK bridge adapter to the new AF 1.0 GA override surface (session lifecycle and response types).
  • Updated migration samples, tests, and documentation to use AsAIAgent(), CreateSessionAsync(), and GA response and workflow event types.

Reviewed changes

Copilot reviewed 54 out of 54 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
dotnet/src/IntegrationTests/Agents/CommonInterfaceConformance/SemanticKernelAIAgentConformance/SemanticKernelAIAgentTests.cs Updates conformance test to session APIs
dotnet/src/IntegrationTests/Agents/CommonInterfaceConformance/AgentWithTextSearchProviderConformance/AgentWithTextSearchProvider.cs Updates conformance fixture session creation
dotnet/src/IntegrationTests/Agents/CommonInterfaceConformance/AgentWithAIContextProviderConformance/AgentWithAIContextProviderTests.cs Updates state provider tests to session creation
dotnet/src/Agents/UnitTests/OpenAI/OpenAIResponseAgentExtensionsTests.cs Updates OpenAI Responses agent extension tests to sessions
dotnet/src/Agents/UnitTests/OpenAI/OpenAIAssistantAgentExtensionsTests.cs Updates Assistant agent extension tests to sessions
dotnet/src/Agents/UnitTests/Core/ChatCompletionAgentExtensionsTests.cs Updates chat completion agent extension tests to sessions
dotnet/src/Agents/UnitTests/Copilot/CopilotStudioAgentExtensionsTests.cs Updates Copilot Studio agent extension tests to sessions
dotnet/src/Agents/UnitTests/Bedrock/Extensions.cs/BedrockAgentExtensionsTests.cs Updates Bedrock agent extension tests to sessions
dotnet/src/Agents/UnitTests/AzureAI/AzureAIAgentExtensionsTests.cs Updates Azure AI agent extension tests to sessions
dotnet/src/Agents/UnitTests/AIAgent/SemanticKernelAIAgentThreadTests.cs Renames adapter tests from thread to session concept
dotnet/src/Agents/UnitTests/AIAgent/SemanticKernelAIAgentTests.cs Updates SK bridge unit tests to session APIs and GA response types
dotnet/src/Agents/UnitTests/AgentExtensionsTests.cs Updates generic agent extension tests to session APIs
dotnet/src/Agents/UnitTests/A2A/A2AAgentExtensionsTests.cs Updates A2A agent extension tests to sessions
dotnet/src/Agents/Abstractions/AIAgent/SemanticKernelAIAgentThread.cs Renames adapter wrapper type to AgentSession
dotnet/src/Agents/Abstractions/AIAgent/SemanticKernelAIAgent.cs Updates SK bridge agent adapter to AF 1.0 GA core overrides
dotnet/samples/AgentFrameworkMigration/OpenAIResponses/Step04_DependencyInjection/Program.cs Updates sample to Responses AsAIAgent and required using
dotnet/samples/AgentFrameworkMigration/OpenAIResponses/Step03_ToolCall/Program.cs Updates Responses tool call sample to AsAIAgent
dotnet/samples/AgentFrameworkMigration/OpenAIResponses/Step02_ReasoningModel/Program.cs Updates reasoning sample to sessions and Responses AsAIAgent
dotnet/samples/AgentFrameworkMigration/OpenAIResponses/Step01_Basics/Program.cs Updates basics sample to sessions and Responses AsAIAgent
dotnet/samples/AgentFrameworkMigration/OpenAIAssistants/Step04_CodeInterpreter/Program.cs Updates Assistants migration sample to Responses and sessions
dotnet/samples/AgentFrameworkMigration/OpenAIAssistants/Step03_DependencyInjection/Program.cs Updates DI sample from Assistants to Responses path
dotnet/samples/AgentFrameworkMigration/OpenAIAssistants/Step02_ToolCall/Program.cs Updates tool call sample from Assistants to Responses path
dotnet/samples/AgentFrameworkMigration/OpenAIAssistants/Step01_Basics/Program.cs Updates basics sample from Assistants to Responses path
dotnet/samples/AgentFrameworkMigration/OpenAI/Step03_DependencyInjection/Program.cs Updates ChatClient sample to AsAIAgent and required using
dotnet/samples/AgentFrameworkMigration/OpenAI/Step02_ToolCall/Program.cs Updates ChatClient tool call sample to sessions and AsAIAgent
dotnet/samples/AgentFrameworkMigration/OpenAI/Step01_Basics/Program.cs Updates ChatClient basics sample to sessions and AsAIAgent
dotnet/samples/AgentFrameworkMigration/AzureOpenAIResponses/Step04_DependencyInjection/Program.cs Updates Azure Responses DI sample to AsAIAgent
dotnet/samples/AgentFrameworkMigration/AzureOpenAIResponses/Step03_ToolCall/Program.cs Updates Azure Responses tool call sample to AsAIAgent
dotnet/samples/AgentFrameworkMigration/AzureOpenAIResponses/Step02_ReasoningModel/Program.cs Updates Azure Responses reasoning sample to sessions
dotnet/samples/AgentFrameworkMigration/AzureOpenAIResponses/Step01_Basics/Program.cs Updates Azure Responses basics sample to sessions
dotnet/samples/AgentFrameworkMigration/AzureOpenAIAssistants/Step04_CodeInterpreter/Program.cs Updates Azure Assistants migration sample to Responses path
dotnet/samples/AgentFrameworkMigration/AzureOpenAIAssistants/Step03_DependencyInjection/Program.cs Updates Azure Assistants DI sample to Responses path
dotnet/samples/AgentFrameworkMigration/AzureOpenAIAssistants/Step02_ToolCall/Program.cs Updates Azure Assistants tool call sample to Responses path
dotnet/samples/AgentFrameworkMigration/AzureOpenAIAssistants/Step01_Basics/Program.cs Updates Azure Assistants basics sample to Responses path
dotnet/samples/AgentFrameworkMigration/AzureOpenAI/Step04_ToolCall_WithOpenAPI/Program.cs Updates Azure ChatClient OpenAPI tool sample to AsAIAgent
dotnet/samples/AgentFrameworkMigration/AzureOpenAI/Step03_DependencyInjection/Program.cs Updates Azure ChatClient DI sample to AsAIAgent
dotnet/samples/AgentFrameworkMigration/AzureOpenAI/Step02_ToolCall/Program.cs Updates Azure ChatClient tool call sample to AsAIAgent
dotnet/samples/AgentFrameworkMigration/AzureOpenAI/Step01_Basics/Program.cs Updates Azure ChatClient basics sample to sessions and AsAIAgent
dotnet/samples/AgentFrameworkMigration/AzureAIFoundry/Step04_CodeInterpreter/Program.cs Updates Foundry sample to AIProjectClient and sessions
dotnet/samples/AgentFrameworkMigration/AzureAIFoundry/Step04_CodeInterpreter/AzureAIFoundry_Step04_CodeInterpreter.csproj Updates Foundry sample package references for GA
dotnet/samples/AgentFrameworkMigration/AzureAIFoundry/Step03_DependencyInjection/Program.cs Updates Foundry DI sample, now uses Responses path
dotnet/samples/AgentFrameworkMigration/AzureAIFoundry/Step03_DependencyInjection/AzureAIFoundry_Step03_DependencyInjection.csproj Updates Foundry DI sample package references for GA
dotnet/samples/AgentFrameworkMigration/AzureAIFoundry/Step02_ToolCall/Program.cs Updates Foundry tool call sample to AIProjectClient and sessions
dotnet/samples/AgentFrameworkMigration/AzureAIFoundry/Step02_ToolCall/AzureAIFoundry_Step02_ToolCall.csproj Updates Foundry tool call sample package references for GA
dotnet/samples/AgentFrameworkMigration/AzureAIFoundry/Step01_Basics/Program.cs Updates Foundry basics sample to AIProjectClient and sessions
dotnet/samples/AgentFrameworkMigration/AzureAIFoundry/Step01_Basics/AzureAIFoundry_Step01_Basics.csproj Updates Foundry basics sample package references for GA
dotnet/samples/AgentFrameworkMigration/AgentOrchestrations/Step03_Handoff/Program.cs Updates workflows streaming API and event types
dotnet/samples/AgentFrameworkMigration/AgentOrchestrations/Step03_Handoff/AgentOrchestrations_Step03_Handoff.csproj Updates orchestration packages to GA set
dotnet/samples/AgentFrameworkMigration/AgentOrchestrations/Step02_Sequential/Program.cs Updates workflows streaming API and event types
dotnet/samples/AgentFrameworkMigration/AgentOrchestrations/Step02_Sequential/AgentOrchestrations_Step02_Sequential.csproj Updates orchestration packages to GA set
dotnet/samples/AgentFrameworkMigration/AgentOrchestrations/Step01_Concurrent/Program.cs Updates workflows streaming API and event types
dotnet/samples/AgentFrameworkMigration/AgentOrchestrations/Step01_Concurrent/AgentOrchestrations_Step01_Concurrent.csproj Updates orchestration packages to GA set
dotnet/Directory.Packages.props Bumps AF packages to 1.0.0 GA and renames Foundry package
.github/upgrades/prompts/SemanticKernelToAgentFramework.md Updates migration guide content and examples for AF 1.0 GA
Comments suppressed due to low confidence (1)

dotnet/src/Agents/Abstractions/AIAgent/SemanticKernelAIAgentThread.cs:22

  • SemanticKernelAIAgentSession stores a thread serializer delegate but never uses it. Since callers (and unit tests) rely on session.Serialize(...) producing a JsonElement, this adapter should override the appropriate serialization method (or remove the delegate and update all callers to serialize via the agent API) so session serialization actually works.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@rogerbarreto rogerbarreto changed the title Update SK -> Agent Framework Migration to 1.0 Stable .Net: Semantic Kernel -> Agent Framework - Migration/Samples Update (AF 1.0 Compatible) Apr 8, 2026
Copy link
Copy Markdown
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated Code Review

Reviewers: 4 | Confidence: 86%

✗ Correctness

This PR upgrades Microsoft.Agents.AI packages from preview to 1.0, renaming APIs throughout (CreateAIAgent→AsAIAgent, GetNewThread→CreateSessionAsync, AgentThread→AgentSession, AgentRunResponse→AgentResponse, etc.). The bulk of changes are consistent and correct. However, there are compilation errors in integration tests where this.Fixture.GetNewThread() (returning SK AgentThread) was incorrectly changed to this.Fixture.CreateSessionAsync() — a method that doesn't exist on AgentFixture and would return the wrong type even if it did (these tests require SK AgentThread with its AIContextProviders property, not AF AgentSession). There is also a variable naming issue in the migration guide where AgentResponse (PascalCase) shadows the type name.

✓ Security Reliability

This PR migrates from a preview version of Microsoft.Agents.AI packages to 1.0.0, renaming APIs (CreateAIAgent→AsAIAgent, GetNewThread→CreateSessionAsync, AgentThread→AgentSession, etc.) across documentation, samples, source, and tests. The changes are largely mechanical renames with no new security vulnerabilities introduced. The migration doc has a variable naming bug in a code sample that would confuse users copying the code. Several samples remove server-side resource cleanup when switching to non-hosted API paths, which is appropriate. The source code changes correctly adapt to the new base class shape (protected override Core methods). No secrets, injection risks, or unsafe deserialization patterns were found.

✓ Test Coverage

This PR updates the Semantic Kernel ↔ Agent Framework adapter layer from preview to v1.0 APIs, renaming classes (Thread→Session), methods (GetNewThread→CreateSessionAsync, RunAsync→RunCoreAsync), and types (AgentRunResponse→AgentResponse). Existing unit tests are properly renamed to match the new types. However, the newly introduced SerializeSessionCoreAsync method in SemanticKernelAIAgent—which includes an incompatible-session type check throwing InvalidOperationException—has no unit test coverage. Additionally, three Serialize tests in SemanticKernelAIAgentSessionTests still call .Serialize() on the session object, but the diff removes the Serialize() override from SemanticKernelAIAgentSession, meaning these tests may now exercise base-class behavior rather than the intended serialization logic (which moved to the agent's SerializeSessionCoreAsync). The integration tests in AgentWithAIContextProviderTests and AgentWithTextSearchProvider call this.Fixture.CreateSessionAsync(), but AgentFixture.cs is not updated in this diff and still only defines GetNewThread(), which could cause compilation failures.

✗ Design Approach

This PR tracks a breaking API rename in the Microsoft.Agents.AI 1.0.0 GA release: CreateAIAgent()AsAIAgent(), AgentThread/GetNewThread()AgentSession/CreateSessionAsync(), AgentRunResponseAgentResponse, and AgentRunResponseUpdateAgentResponseUpdate. The package reference changes and method renames are mechanically correct. However, there are two significant design-level concerns: (1) a PascalCase variable named AgentResponse in the migration prompt doc collides with the type AgentResponse, which will produce broken/confusing code when users or AI tools copy this guide verbatim; (2) the AFAgent sections in the OpenAIAssistants and AzureOpenAIAssistants sample folders have been silently redirected to use the Responses API instead of the Assistants API — the folder names and the SK side of each sample clearly indicate Assistants migration, but the AF side no longer demonstrates it. Step04_CodeInterpreter in both folders becomes functionally identical to Step01_Basics, making it a misleading stub. The migration doc also claims AsAIAgent() is used to 'create new agents in the hosted service', which contradicts the synchronous, non-async As* naming convention in .NET (which universally means 'cast/wrap', not 'provision remotely').

Flagged Issues

  • Integration tests in AgentWithAIContextProviderTests.cs (lines 34, 68, 103, 133) and AgentWithTextSearchProvider.cs (line 58) call this.Fixture.CreateSessionAsync(), which does not exist on AgentFixture (only GetNewThread() exists). These tests require SK AgentThread for its AIContextProviders property and must not be changed to use AF AgentSession. All five call sites will fail to compile and should be reverted to this.Fixture.GetNewThread().
  • In SemanticKernelToAgentFramework.md, the breaking-glass example uses var AgentResponse = await agent.RunAsync(...) — a PascalCase identifier that shadows the AgentResponse type. Code copied from this migration guide will either fail to compile or produce confusing naming. Should be var agentResponse = ... (camelCase).

Suggestions

  • Add unit tests for the new SerializeSessionCoreAsync method in SemanticKernelAIAgent, covering both the InvalidOperationException when passed an incompatible session type and the happy path where it successfully delegates to _threadSerializer.
  • The Serialize_CallsThreadSerializer, Serialize_WithJsonSerializerOptions_PassesOptionsToSerializer, and Serialize_WithNullOptions_CallsSerializerWithNull tests in SemanticKernelAIAgentSessionTests call .Serialize() on the session, but the Serialize() override was removed from SemanticKernelAIAgentSession (serialization moved to the agent's SerializeSessionCoreAsync). Verify these tests still validate the intended serialization path or update them to test through the agent.
  • The AF sample functions in OpenAIAssistants/Step01–03 and AzureOpenAIAssistants/Step01–03 now use GetResponsesClient().AsAIAgent() instead of GetAssistantClient(). The folders are named '*Assistants' and the SK side demonstrates the Assistants API, so readers looking for the Assistants→AF migration path will find no AF equivalent using Assistants. Either keep a GetAssistantClient().GetAIAgent(id) example in the AF section, or rename the folders to reflect that the recommended AF path is Responses-based.
  • Step04_CodeInterpreter in OpenAIAssistants and AzureOpenAIAssistants is now functionally identical to Step01_Basics — all code interpreter tool setup, breaking-glass extraction, and citations handling are removed. Either demonstrate code interpreter via a supported AF 1.0 path (e.g., Assistants API via GetAssistantClient().GetAIAgent(existingId)) or explicitly remove/mark this step as 'not yet migrated'.
  • The migration doc states 'AsAIAgent(): Use when creating new agents in the hosted service', but in .NET idiom As* is a synchronous cast/wrap that does not provision remote resources. Clarify whether AsAIAgent() configures a lazily-created hosted agent or is purely a local wrapper, and update the wording to distinguish it from GetAIAgent(id).

Automated review by rogerbarreto's agents

- Replace GetAwaiter().GetResult() with await in async test methods
- Fix lastResponseMessage never assigned in SemanticKernelAIAgent.RunCoreAsync
- Revert incorrect AgentFixture.GetNewThread() renames (SK methods, not AF)
- Fix remaining thread → session variable names in migration doc AF snippets
- Update Foundry DI sample to use AIProjectClient instead of AzureOpenAIClient
- Add explicit notes about Assistants → Responses migration path
- Remove obsolete Serialize() tests from SemanticKernelAIAgentSessionTests
  (serialization moved to agent.SerializeSessionCoreAsync)
OpenAI Assistants API is deprecated and no longer supported by the
Microsoft Agent Framework. Users should migrate to the Responses API
instead (see OpenAIResponses and AzureOpenAIResponses samples).
- Fix missing await on CreateSessionAsync/DeserializeSessionAsync/SerializeSessionAsync
  in SemanticKernelAIAgentTests integration test
- Remove dead _threadSerializer field from SemanticKernelAIAgentSession (Sergey)
- Simplify SemanticKernelAIAgentSession constructor (single param)
- Fix migration doc: thread→session in comments (Sergey, lines 1288/1357)
- Fix migration doc: undeclared thread variable (Sergey, line 1572)
- Fix migration doc: PascalCase variable name (line 796)
- Remove obsolete Serialize tests from SemanticKernelAIAgentSessionTests
- Apply dotnet format
- All 499 unit tests pass, 0 failures
<ItemGroup>
<PackageReference Include="Microsoft.Agents.AI.Abstractions" />
<PackageReference Include="Microsoft.Agents.AI.AzureAI" />
<PackageReference Include="Microsoft.Agents.AI.OpenAI" />
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we using this? From the sample I would have thought we are only using foundry?

<ItemGroup>
<PackageReference Include="Microsoft.Agents.AI.Abstractions" />
<PackageReference Include="Microsoft.Agents.AI.AzureAI" />
<PackageReference Include="Microsoft.Agents.AI.OpenAI" />
Copy link
Copy Markdown
Contributor

@westey-m westey-m Apr 8, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here, looks like all foundry
And a few other samples below.

@@ -1,35 +1,25 @@
// Copyright (c) Microsoft. All rights reserved.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remember to also rename the file.

Applied dotnet format via mcr.microsoft.com/dotnet/sdk:10.0 Docker image
(matching CI pipeline). Fixes using statement ordering (System.Threading.Tasks)
and removes unnecessary using directives (Azure.AI.OpenAI in Foundry samples).
- Remove unnecessary Microsoft.Agents.AI.OpenAI and Azure.AI.OpenAI
  from Foundry sample csproj files (AF sections use AIProjectClient only)
- Remove unused 'using OpenAI.Responses' from Foundry .cs files
- Rename SemanticKernelAIAgentThread.cs -> SemanticKernelAIAgentSession.cs
- Rename SemanticKernelAIAgentThreadTests.cs -> SemanticKernelAIAgentSessionTests.cs
- Apply dotnet format
@rogerbarreto rogerbarreto deployed to integration April 10, 2026 15:09 — with GitHub Actions Active
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.

4 participants