Commit Graph

295 Commits

  • .NET: Upgrade to .NET 10 (#2128)
    * Upgrade to .NET 10
    
    - Require .NET 10 SDK
    - Include net10.0 assets in all assemblies
    - Move net9.0-only targets to net10.0
    - Update LangVersion to latest
    - Remove complicated distinctions between debug target TFMs and release target TFMs
    - Remove unnecessary package dependencies when built into netcoreapp
    - Clean up some ifdefs
    - Clean up some analyzer warnings
    
    * Fix CI
  • .NET: sanitize redirectUrl for logs (#2356)
    * sanitize redirectUrl for logs
    
    * use basepath
    
    * sanitize both path and reddirect url
  • .NET: Improve AIAgent and Workflow registrations for DevUI integration (#2227)
    * wip
    
    * resolve non-agent workflows as well!
    
    * add tests for devui registrations and resolving
    
    * fixes
    
    * devui for net8 as well!
    
    * simplify TFM
    
    * update tfm...
    
    * tfm rules....
    
    * wip
    
    * roll
    
    * verify entities are registered with a devui call
    
    * tests
    
    * add a proper support for non-keyed workflows
    
    * resolve default aiagent registration
    
    * sort usings :)
    
    * cleanup tests
  • Clarify exception handling in ConversationId property (#1457)
    Update XML documentation to clarify exception behavior.
    
    See `ChatClientAgentThreadTests.SetConversationIdThrowsWhenMessageStoreIsSet` which already verifies this is the actual behavior.
    
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
  • .NET: Add Microsoft.Agents.AI.AzureAI (Azure.AI.Project 1.2) Support (#1662)
    * WIP
    
    * Fixed build errors (#1638)
    
    Comment and nullable type alignment
    
    * .NET: Azure.AI.Agents Package Split + Initial Extensions (#1657)
    
    * Move packages
    
    * Update nuget.config
    
    * Address Xmldoc
    
    * Remove format from branches checks
    
    * Address Xmldocs
    
    * Add more details to the implementation
    
    * Moving Agent logic to ChatClient
    
    * Adding Name and Id overrides to AzureAIAgent
    
    * Updating extensions
    
    * Add GetAiAgent extensions
    
    * Adding support for version as name can conflict 409 using the Agents API with same name
    
    * Addressing more updates to the extensions
    
    * More improvements
    
    * Remove debugging code from sample
    
    * Address copilot feedback
    
    * Apply suggestions from co-pilot code review
    
    * Update Directory.Packages.props
    
    Fix package version rollback:
    
    Azure.AI.Agents.Persistent (beta-6 => beta-7)
    
    * .NET: Add comprehensive unit tests for Microsoft.Agents.AI.AzureAIAgents extension methods (#1786)
    
    * Initial plan
    
    * Add comprehensive unit test project for Microsoft.Agents.AI.AzureAIAgents
    
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Add README documenting test project and package dependency requirements
    
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Fix documentation URL to use learn.microsoft.com
    
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Bump back AAAP 1.2.0-beta.7
    
    * Address AI generated UT's
    
    * Remove UT Readme
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * .NET: Change model to be required just for prompt agent definition specific extensions (#1812)
    
    * Remove unneeded model from extensions
    
    * Add noop justification
    
    * Update Package Nameing: V1 -> AzureAI.Persistent / V2 -> AzureAI (#1829)
    
    * .NET: Update Extensions for Strict Agent Definitions + Improvements (#1892)
    
    * Update Package Nameing: V1 -> AzureAI.Persistent / V2 -> AzureAI
    
    * Update agents and extensions to comply with strict agent definitions
    
    * More static updates
    
    * Address UT, and ResponseTool support
    
    * Improving reusability extensions
    
    * Addressing ResponseTools Unit Tests and extension setup
    
    * Adapted workaround on breaking AAA with OpenAI 2.6.0
    
    * Small updates
    
    * Remove strictness when retrieving agents, improved XmlDocs
    
    * Improve sample comments
    
    * Update dotnet/tests/Microsoft.Agents.AI.AzureAI.UnitTests/AgentsClientExtensionsTests.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestion from @Copilot
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestion from @Copilot
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Address PR comments
    
    * Address UT failing
    
    * Address Copilot feedback
    
    * Address Copilot feedback
    
    * Address comment typo
    
    * Address PR feedback
    
    * Address typo
    
    * Add missing Extensions with ChatClientAgentOptions
    
    * Address comments
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Version update (#1901)
    
    * Updated package version (#1906)
    
    * .NET: Allow Declarative AIAgents Extensions (#1931)
    
    * Improve reusability of extension code and additional option to losen the strictiness of in-proc tools
    
    * Add missing UT scenarios
    
    * Add missing UT test scenarios
    
    * Normalize changes
    
    * Updated (#1948)
    
    * .NET: AgentDefinition extensions method simplification (#1967)
    
    * Update extensions methods that accepts AgentDefinition type to not be restrictive
    
    * Update Unit Tests
    
    * Revert yarn/package-lock
    
    * Revert yarn/package-lock
    
    * Address copilot feedback
    
    * Fix bad merge
    
    * .NET Workflows - WIP Declarative action update (#1761)
    
    * WIP
    
    * Fixed build errors (#1638)
    
    Comment and nullable type alignment
    
    * Sync to SDK update
    
    * Checkpoint
    
    * Checkpoint: Tests passing
    
    * Checkpoint: EndWorkflow
    
    * Add trace
    
    * .NET: Azure.AI.Agents Package Split + Initial Extensions (#1657)
    
    * Move packages
    
    * Update nuget.config
    
    * Address Xmldoc
    
    * Remove format from branches checks
    
    * Address Xmldocs
    
    * Add more details to the implementation
    
    * Moving Agent logic to ChatClient
    
    * Adding Name and Id overrides to AzureAIAgent
    
    * Updating extensions
    
    * Add GetAiAgent extensions
    
    * Adding support for version as name can conflict 409 using the Agents API with same name
    
    * Addressing more updates to the extensions
    
    * More improvements
    
    * Remove debugging code from sample
    
    * Address copilot feedback
    
    * Apply suggestions from co-pilot code review
    
    * Checkpoint
    
    * Update Directory.Packages.props
    
    Fix package version rollback:
    
    Azure.AI.Agents.Persistent (beta-6 => beta-7)
    
    * Add project reference
    
    * .NET: Add comprehensive unit tests for Microsoft.Agents.AI.AzureAIAgents extension methods (#1786)
    
    * Initial plan
    
    * Add comprehensive unit test project for Microsoft.Agents.AI.AzureAIAgents
    
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Add README documenting test project and package dependency requirements
    
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Fix documentation URL to use learn.microsoft.com
    
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Bump back AAAP 1.2.0-beta.7
    
    * Address AI generated UT's
    
    * Remove UT Readme
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * .NET: Change model to be required just for prompt agent definition specific extensions (#1812)
    
    * Remove unneeded model from extensions
    
    * Add noop justification
    
    * Update Package Nameing: V1 -> AzureAI.Persistent / V2 -> AzureAI (#1829)
    
    * Checkpoint for merge
    
    * No build errors
    
    * .NET: Update Extensions for Strict Agent Definitions + Improvements (#1892)
    
    * Update Package Nameing: V1 -> AzureAI.Persistent / V2 -> AzureAI
    
    * Update agents and extensions to comply with strict agent definitions
    
    * More static updates
    
    * Address UT, and ResponseTool support
    
    * Improving reusability extensions
    
    * Addressing ResponseTools Unit Tests and extension setup
    
    * Adapted workaround on breaking AAA with OpenAI 2.6.0
    
    * Small updates
    
    * Remove strictness when retrieving agents, improved XmlDocs
    
    * Improve sample comments
    
    * Update dotnet/tests/Microsoft.Agents.AI.AzureAI.UnitTests/AgentsClientExtensionsTests.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestion from @Copilot
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestion from @Copilot
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Address PR comments
    
    * Address UT failing
    
    * Address Copilot feedback
    
    * Address Copilot feedback
    
    * Address comment typo
    
    * Address PR feedback
    
    * Address typo
    
    * Add missing Extensions with ChatClientAgentOptions
    
    * Address comments
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Updated package version (#1897)
    
    * Version update (#1901)
    
    * Checkpoint
    
    * Updated package version (#1906)
    
    * Checkpoint
    
    * Checkpoint
    
    * Checkpoint
    
    * Align with azure ai agent
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/StudentTeacher/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/MCPToolApproval/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/DeepResearch/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Refactored external input
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/MCPToolApproval/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Agent tools patch
    
    * Demos validated
    
    * Checkpoint
    
    * Hygiene
    
    * Checkpoint - Samples
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/StudentTeacher/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/StudentTeacher/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Checkpoint
    
    * Checkpoint - Deep Research
    
    * Update baseline
    
    * Update
    
    * Typo
    
    * Checkpoint
    
    * Typos
    
    * Sample cleanup
    
    * Update dotnet/src/Microsoft.Agents.AI.Workflows.Declarative/AzureAgentProvider.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/src/Microsoft.Agents.AI.AzureAI/AgentsClientExtensions.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/FunctionTools/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/StudentTeacher/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/ToolApproval/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/DeepResearch/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Typo
    
    * Typo
    
    * Fix input loop
    
    * Sample - Function Calling / External Input
    
    * Typo
    
    * Finessed
    
    * Checkpoint
    
    * Fix feed
    
    * Checkpoint - so close
    
    * Ding dong!
    
    * "there" ***
    
    * Fixup comments
    
    * Fix sample
    
    * Code analysis
    
    * Header
    
    * Typo (variableName)
    
    * Remove dead code
    
    * Skip test (agent api ratchet)
    
    * Comment
    
    * Update dotnet/samples/GettingStarted/Workflows/Declarative/StudentTeacher/Program.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Typo
    
    ---------
    
    Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com>
    Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
    
    * .NET: Latest updates Pre/Post V2 Bugbash Findings (#2040)
    
    * Improve V2 logic before/after bugbash prep
    
    * Apply suggestions from code review
    
    Co-authored-by: Stephen Toub <stoub@microsoft.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Stephen Toub <stoub@microsoft.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * .NET: Update Foundry Agents to latest 2.0.0 alpha.20251107.3 (#2050)
    
    * Update extensions for new CreateVersionOptions structure
    
    * Update unit tests
    
    * Addresss capitalized
    
    * Update AgentsClientExtensionsTests.cs
    
    Fix invalid cast format failure
    
    * .NET: Feature foundry agent + user agent (#2058)
    
    * Update unit tests
    
    * Add user-agent protocol calls
    
    * Update unit tests
    
    * Update unit tests with http handler confirmation
    
    * UT fix
    
    * Fix xmldoc
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Address copilot feedback
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * .NET: Update Extensions to be less restrictive for GetAIAgents (#2091)
    
    * Update behavior / restrictiveness when retrieving agents
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Address format
    
    * Address copilot feedback
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
    
    * .NET Workflows - Support "structured inputs" feature for declarative workflows (#2053)
    
    * Bump version for release
    
    * .NET Workflows - Separate Foundry/AzureAI Provider into its own package (#2078)
    
    * Remove unused using directive in AzureAgentProvider
    
    Removed unused using directive for Extensions.
    
    * .NET: Updates to Foundry Agents Package (#2125)
    
    * Remove the conversation creation always
    
    * Update unit tests + address IL + refactor
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Internalize unused methods
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Fix declarative workflows integration testcase
    
    * .NET: Feature foundry agent/agent reference extension (Python Parity with Name + Version option) (#2147)
    
    * Add agent reference extensions
    
    * Add UT covering AgentReference and ModelId
    
    * .NET: Add GettingStarted Samples for Agents V2. (#2159)
    
    * Add gettingstarted samples for Foundry Agents
    
    * Address structured outputs
    
    * Net 10 -> Net 9 Temporary
    
    * Net 10 -> Net 9 Temporary
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Address missing docs + old
    
    * Drop var for samples
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Address copilot feedback
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * .NET: Foundry Agents V2 - Add CodeInterpreter Sample (#2180)
    
    * Adding Code Interpreter sample and AgentName naming validation
    
    * Add agent name check UT
    
    * Improve sample code
    
    * Apply suggestion
    
    * Apply suggestion
    
    * Fixed (#2190)
    
    * .NET Workflows - Add "CustomerSupport" sample (#2102)
    
    * .NET Workflows - Add sample for hosted declarative workflow (#2199)
    
    * fwiw
    
    * Less blank lines
    
    * Fixed (#2204)
    
    * Update version (#2206)
    
    * .NET: Feature foundry agent/update breaking v2.0 to v1.2 (#2212)
    
    * Migration WIP Checkpoint 1
    
    * Build + UT + Workflow passing
    
    * Address latest commits after break
    
    * Revert rename in unrelated files
    
    * Address PR comments
    
    * Class renames
    
    * Allow dotnet-format workflow on feature branches
    
    Revert unintentional edit
    
    * .NET: Add Conformance Integration Tests for AzureAI Package (#2237)
    
    * Conformance tests added and passing
    
    * Correct namespace
    
    * Update Azure.AI.Project to latest public nuget version
    
    * .NET: Added Computer use tool sample (#2235)
    
    * Initial computer use sample implementation.
    
    * Added background thread to allow polling for long running requests.
    
    * Removed unrequired try-catch block and added missing thread for agent call.
    
    * Removed irrelevant chatOptions and updated code based on feedback.
    
    * Updated image assets and fixed response issue.
    
    * Updated based on PR comments.
    
    * Update to Azure.AI.Project
    
    ---------
    
    Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Package descriptions
    
    ---------
    
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
    Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
    Co-authored-by: Chris Rickman <crickman@microsoft.com>
    Co-authored-by: Stephen Toub <stoub@microsoft.com>
    Co-authored-by: Mark Wallace <127216156+markwallace-microsoft@users.noreply.github.com>
    Co-authored-by: Peter Ibekwe <109177538+peibekwe@users.noreply.github.com>
  • .NET: Friendly error message when durable agent isn't registered (#2214)
    * .NET: Friendly error message when durable agent isn't registered
    
    * Updates
    
    * Fix file encoding
    
    * Add validation for durable agent proxies
    
    * Copilot PR feedback
  • .NET: Implement Purview middleware in dotnet (#1949)
    * Move Purview integration logic into middleware
    
    * Improve error handling and user id management
    
    * Rename purview package
    
    * Handle 402s more explicitly; add Middleware generation methods; don't ignore exceptions
    
    * Use DI container; pass scope id to PC
    
    * Add protection scope caching
    
    * Wrap more exceptions in PurviewClient
    
    * Remove block check dedup; add tests
    
    * Refactor PurviewWrapper intialization; Add unit tests
    
    * Use different .Use method and add IDisposable stub
    
    * Add background job processing for Purview
    
    * Misc comment cleanup
    
    * Apply copilot comments
    
    * Fix formatting
    
    * Formatting other files to fix pipeline
    
    * Small updates to settings and exceptions
    
    * Add README
    
    * Move Purview sample
    
    * Address review comments and update XML comments
    
    * Newline after namespace
    
    * Move public Purview classes to single namespace; Clean up csproj and slnx
    
    * Commit the renames
    
    * Remove unused openAI dependency
    
    ---------
    
    Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
  • .NET: Python: Azure Functions feature branch (#1916)
    * Python: Add Scaffolding for Durable AzureFunctions package to Agent Framework (#1823)
    
    * Add scafolding
    
    * update readme
    
    * add code owners and label
    
    * update owners
    
    * .NET: Durable extension: initial src and unit tests (#1900)
    
    * Python: Add Durable Agent Wrapper code (#1913)
    
    * add initial changes
    
    * Move code and add single sample
    
    * Update logger
    
    * Remove unused code
    
    * address PR comments
    
    * cleanup code and address comments
    
    ---------
    
    Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
    
    * Azure Functions .NET samples (#1939)
    
    * Python: Add Unit tests for Azurefunctions package (#1976)
    
    * Add Unit tests for Azurefunctions
    
    * remove duplicate import
    
    * .NET: [Feature Branch] Migrate state schema updates and support for agents as MCP tools (#1979)
    
    * Python: Add more samples for Azure Functions (#1980)
    
    * Move all samples
    
    * fix comments
    
    * remove dead lines
    
    * Make samples simpler
    
    * .NET: [Feature Branch] Durable Task extension integration tests (#2017)
    
    * .NET: [Feature Branch] Update OpenAI config for integration tests (#2063)
    
    * Python: Add Integration tests for AzureFunctions  (#2020)
    
    * Add Integration tests
    
    * Remove DTS extension
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Add pyi file for type safety
    
    * Add samples in readme
    
    * Updated all readme instructions
    
    * Address comments
    
    * Update readmes
    
    * Fix requirements
    
    * Address comments
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * .NET: [Feature Branch] Update dotnet-build-and-test.yml to support integration tests (#2070)
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Fix DTS startup issue and improve logging (#2103)
    
    * .NET: [Feature Branch] Introduce Azure OpenAI config for .NET pipeline (#2106)
    
    Also fixes an issue where we were trying to start docker containers for integration tests on Windows, which doesn't work.
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Fix uv.lock after merge
    
    * Python: Add README for Azure Functions samples setup (#2100)
    
    * Add README for Azure Functions samples setup
    
    Added setup instructions for Azure Functions samples, including environment setup, virtual environment creation, and running samples.
    
    * Update python/samples/getting_started/azure_functions/README.md
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestion from @Copilot
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Laveesh Rohra <larohra@microsoft.com>
    
    * Fix or remove broken markdown file links (#2115)
    
    * .NET: [Feature Branch] Update HTTP API to be consistent across languages (#2118)
    
    * Python: Fix AzureFunctions Integration Tests (#2116)
    
    * Add Identity Auth to samples
    
    * Update python/samples/getting_started/azure_functions/README.md
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/samples/getting_started/azure_functions/01_single_agent/function_app.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/samples/getting_started/azure_functions/02_multi_agent/function_app.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/samples/getting_started/azure_functions/06_multi_agent_orchestration_conditionals/README.md
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Python: Fix Http Schema (#2112)
    
    * Rename to threadid
    
    * Respond in plain text
    
    * Make snake-case
    
    * Add http prefix
    
    * rename to wait-for-response
    
    * Add query param check
    
    * address comments
    
    * .NET: Remove IsPackable=false in preparation for nuget release (#2142)
    
    * Python: Move `azurefunctions` to `azure` for import (#2141)
    
    * Move import to Azure
    
    * fix mypy
    
    * Update python/packages/azurefunctions/README.md
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Add missing types
    
    * Address comments
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/packages/azurefunctions/pyproject.toml
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/packages/azurefunctions/agent_framework_azurefunctions/__init__.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Fix imports
    
    * Address PR feedback from westey-m (#2150)
    
    - Adds a link from the /dotnet/samples/README.md to /dotnet/samples/AzureFunctions
    - Make DurableAgentThread deserialization internal for future-proofing
    - Update JSON serialization logic to address recently discovered issues with source generator serialization
    
    * Address comments (#2160)
    
    ---------
    
    Co-authored-by: Laveesh Rohra <larohra@microsoft.com>
    Co-authored-by: Chris Gillum <cgillum@microsoft.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Anirudh Garg <anirudhg@microsoft.com>
  • .NET: Expose more agent metadata through DevUI discovery endpoint (#2138)
    * Exposes more agent metadata through DevUI discovery endpoint
    
    * Exposes more agent metadata through DevUI discovery endpoint
    
    * pr feedback
    
    * pr feedback
    
    * Don't expose Workflows as agents to DevUI
  • .NET: Allow extending agent run options via additional properties (#1872)
    * Allow extending agent run options via additional properties
    
    This mirrors the M.E.AI model in ChatOptions.AdditionalProperties which is very useful when building functionality pipelines.
    
    Fixes https://github.com/microsoft/agent-framework/issues/1815
    
    * Expand XML documentation
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Add AdditionalProperties tests to AgentRunOptions
    
    Co-authored-by: kzu <169707+kzu@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: kzu <169707+kzu@users.noreply.github.com>
  • .NET: fix: WorkflowAsAgent Sample (#1787)
    * fix: WorkflowAsAgent Sample
    
    * Also makes ChatForwardingExecutor public
    
    * feat: Expand ChatForwardingExecutor handled types
    
    Make ChatForwardingExecutor match the input types of ChatProtocolExecutor.
    
    * fix: Update for the new AgentRunResponseUpdate merge logic
    
    AIAgent always sends out List<ChatMessage> now.
  • Python: .Net: Dotnet devui compatibility fixes (#2026)
    * DevUI: Add OpenAI Responses API proxy support with enhanced UI features
    
    This commit adds support for proxying requests to OpenAI's Responses API,
    allowing DevUI to route conversations to OpenAI models when configured to enable testing.
    
    Backend changes:
    - Add OpenAI proxy executor with conversation routing logic
    - Enhance event mapper to support OpenAI Responses API format
    - Extend server endpoints to handle OpenAI proxy mode
    - Update models with OpenAI-specific response types
    - Remove emojis from logging and CLI output for cleaner text
    
    Frontend changes:
    - Add settings modal with OpenAI proxy configuration UI
    - Enhance agent and workflow views with improved state management
    - Add new UI components (separator, switch) for settings
    - Update debug panel with better event filtering
    - Improve message renderers for OpenAI content types
    - Update types and API client for OpenAI integration
    
    * update ui, settings modal and workflow input form, add register cleanup hooks.
    
    * add workflow HIL support, user mode, other fixes
    
    * feat(devui): add human-in-the-loop (HIL) support with dynamic response schemas
    
    Implement  HIL workflow support allowing workflows to pause for user input
    with dynamically generated JSON schemas based on response handler type hints.
    
    Key Features:
    - Automatic response schema extraction from @response_handler decorators
    - Dynamic form generation in UI based on Pydantic/dataclass response types
    - Checkpoint-based conversation storage for HIL requests/responses
    - Resume workflow execution after user provides HIL response
    
    Backend Changes:
    - Add extract_response_type_from_executor() to introspect response handlers
    - Enrich RequestInfoEvent with response_schema via _enrich_request_info_event_with_response_schema()
    - Map RequestInfoEvent to response.input.requested OpenAI event format
    - Store HIL responses in conversation history and restore checkpoints
    
    Frontend Changes:
    - Add HILInputModal component with SchemaFormRenderer for dynamic forms
    - Support Pydantic BaseModel and dataclass response types
    - Render enum fields as dropdowns, strings as text/textarea, numbers, booleans, arrays, objects
    - Display original request context alongside response form
    
    Testing:
    - Add  tests for checkpoint storage (test_checkpoints.py)
    - Add schema generation tests for all input types (test_schema_generation.py)
    - Validate end-to-end HIL flow with spam workflow sample
    
    This enables workflows to seamlessly pause execution and request structured user input
    with type-safe, validated forms generated automatically from response type annotations.
    
    * improve HIL support, improve workflow execution view
    
    * ui updates
    
    * ui updates
    
    * improve HIL for workflows, add auth and view modes
    
    * update workflow
    
    * security improvements , ui fixes
    
    * fix mypy error
    
    * update loading spinner in ui
    
    * DevUI: Serialize workflow input as string to maintain conformance with OpenAI Responses format
    
    * Phase 1: Add /meta endpoint and fix workflow event naming for .NET DevUI compatibility
    
    * additional fixes for .NET DevUI workflow visualization item ID tracking
    
    **Problem:**
    .NET DevUI was generating different item IDs for ExecutorInvokedEvent and
    ExecutorCompletedEvent, causing only the first executor to highlight in the
    workflow graph. Long executor names and error messages also broke UI layout.
    
    **Changes:**
    - Add ExecutorActionItemResource to match Python DevUI implementation
    - Track item IDs per executor using dictionary in AgentRunResponseUpdateExtensions
    - Reuse same item ID across invoked/completed/failed events for proper pairing
    - Add truncateText() utility to workflow-utils.ts
    - Truncate executor names to 35 chars in execution timeline
    - Truncate error messages to 150 chars in workflow graph nodes
    
    ** Details:**
    - ExecutorActionItemResource registered with JSON source generation context
    - Dictionary cleaned up after executor completion/failure to prevent memory leaks
    - Frontend item tracking by unique item.id supports multiple executor runs
    - All changes follow existing codebase patterns and conventions
    
    Tested with review-workflow showing correct executor highlighting and state
    transitions for sequential and concurrent executors.
    
    * format fixes, remove cors tests
    
    * remove unecessary attributes
    
    ---------
    
    Co-authored-by: Mark Wallace <127216156+markwallace-microsoft@users.noreply.github.com>
    Co-authored-by: Reuben Bond <reuben.bond@gmail.com>
  • .NET: assign AgentCard's URL to mapped-endpoint if not defined explicitly (#2047)
    * fix serialization in chat completions on tools
    
    * nit
    
    * write e2e test for agent card resolve + adjust behavior
    
    * nit
  • .NET: fix ChatCompletions Tools serialization (#2043)
    * fix serialization in chat completions on tools
    
    * nit
  • .NET [AG-UI]: Adds support for shared state. (#1996)
    * Product changes
    
    * Tests
    
    * Dojo project
    
    * Cleanups
  • .NET: DevUI - Do not automatically add/map OpenAI services/endpoints (#2014)
    * Don't add OpenAIResponses as part of Dev UI
    
    You should be able to add and remove Dev UI without impacting your other production endpoints.
    
    * Remove `AddDevUI()` and do not map OpenAI endpoints from `MapDevUI()`
    
    * Fix comment wording
    
    * Revise documentation
    
    ---------
    
    Co-authored-by: Daniel Roth <daroth@microsoft.com>
  • Python: DevUI: Use metadata.entity_id instead of model field (#1984)
    * DevUI: Use metadata.entity_id for agent/workflow name instead of model field
    
    * OpenAI Responses: add explicit request validation
    
    * Review feedback
  • .NET: AG-UI support for .NET: Support for tool calling (#1896)
    * Initial implementation
    
    * tmp
    
    * Replace function calling with a FunctionInvokingChatClient
    
    * Cleanups
    
    * Remove custom thread
    
    * Fixing function calling server and client
    
    * Cleanup
    
    * Cleanup serialization
    
    * Run dotnet format
    
    * Pass logger factory
    
    * Populate message properties
    
    * Remove files
    
    * Cleanups
    
    * cleanup
    
    * Cleanups
    
    * More cleanup
    
    * Simplify things
    
    * Cleanup
    
    * Clean up json serialization
    
    * Additional tests
    
    * Add service collection extensions for serialization
    
    * Combine options in AGUIChatClient
    
    * Additional tests
    
    * Include tool calling in the sample, fix mixed server and client tool calls
    
    * Fix tests
    
    * More cleanups
    
    * Fix tests
    
    * Cleanups
    
    * Dojo project and fixes
    
    * Fix build
    
    * Remove dojo
    
    * Cleanup
    
    * Address feedback
    
    * address feedback
    
    * Additional feedback
    
    * Fix build
    
    * Fix build
    
    * Make packages packable
  • .NET: DevUI: Use relative URLs for backend API by default (#2005)
    * DevUI: Use relative URLs for backend API by default
    
    * dotnet format
    
    * rebuild application
  • .NET: Add WithAITool extensions for Hosting AIAgents (#1990)
    * add extensions to register tools via fluentAPI
    
    * fix
  • .NET: Remove sequential\concurrent workflow extensions (#1731)
    * remove non-standard workflow extensions, create overloads for IHostedAgentBuilder
    
    * rework
    
    * rollback extensions in a2a
  • .NET: Chathistory memory provider add (#1867)
    * Add ChatHistoryMemoryProvider with unit tests
    
    * Set new project to not packable.
    
    * Fix bugs
    
    * Add serialization support.
    
    * Update dotnet/src/Microsoft.Agents.AI.VectorDataMemory/ChatHistoryMemoryProvider.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Remove unnecessary line
    
    * Convert ChatHistoryMemoryProvider to use Dynamic collections.
    
    * Sealing options and scope classes.
    
    * Add sample, add scope to logs and improve scope validation
    
    * Move ChatHistoryMemoryProvider to MAAI project.
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
  • .NET: Fix the ordering of chained resolvers in JsonSerializerOptions (#1974)
    * Fix the ordering of chained resolvers in JsonSerializerOptions
    
    We want the resolvers from AIJsonUtilities to be used before the ones from the source generator, in case the source generator emits its own copy in that assembly for the M.E.AI types.
    
    * Apply suggestions from code review
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/src/Microsoft.Agents.AI/AgentJsonUtilities.cs
    
    * Update dotnet/src/Microsoft.Agents.AI.Mem0/Mem0JsonUtilities.cs
    
    Co-authored-by: westey <164392973+westey-m@users.noreply.github.com>
    
    * Remove unused using directive in Mem0JsonUtilities
    
    Removed unused using directive for Microsoft.Extensions.AI.
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: westey <164392973+westey-m@users.noreply.github.com>
  • .NET: AgentHostExecutor should use agent DisplayName as Executor ID (#1840)
    * AgentHostExecutor should use agent DisplayName as Executor ID
    
    * Address comments
    
    * Remove unintended changes
    
    * Remove unintended changes
    
    * Fix tests and address comments
  • .NET: [BREAKING] .NET: Add Workflow on-Build() Orphan Validation (#1943)
    * fix: Workflow Validation
    
    * adds orphan validation to workflow builder
    * adds tests for workflow validation
    * expands on the underlying reasoning why type validation is not supported
    
    * fixup: CodeGen template
  • .NET: Add DevUI package for .NET (#1603)
    * Implement DevUI
    
    * Review feedback
    
    * Fix build
  • .NET: [BREAKING] refactor: Normalize WorkflowBuilder APIs (#1935)
    * [BREAKING] refactor: Normalize WorkflowBuilder APIs
    
    * "partitioner" => "assigner"
    * normalize ordering so sources always to the left of targets for edges
    * normalize parameter ordering so sources and targets are always first arguments
    * remove `params` (users should use collection expressions instead)
    
    * refactor: Align name with Python
  • .NET: Improve fidelity of OpenAI Responses server and add Conversations (#1907)
    * Improve fidelity of OpenAI Responses server and add Conversations
    
    * Merge
    
    * nit
    
    * Undo prior change
    
    * Undo prior change
    
    * Review feedback
    
    * Review feedback
    
    * Fix test
    
    * Use simpler JsonDocument approach for polymorphic deserialization
    
    * More review feedback
    
    * dotnet format
  • [BREAKING] refactor: Fix unintuitive binding of StreamAsync (#1930)
    In #1551 we added a mechanism to open a Streaming workflow run without providing any input. This caused unintuitive behaviour when passing a string as input without providing a runId, resulting in the input being misinterpreted as the runId and the workflow not executing.
    
    As well, the name caused confusion about why the Workflow was not running when using the input-less StreamAsync (since the Workflow cannot run without any messages to drive its execution).
  • .NET: AG-UI support for .NET (#1776)
    * Initial plan
    
    * Infrastructure setup
    
    * Plan for minimal client
    
    * Plan update
    
    * Basic agentic chat
    
    * cleanup
    
    * Cleanups
    
    * More cleanups
    
    * Cleanups
    
    * More cleanups
    
    * Test plan
    
    * Sample
    
    * Fix streaming and error handling
    
    * Fix notifications
    
    * Cleanups
    
    * cleanup sample
    
    * Additional tests
    
    * Additional tests
    
    * Run dotnet format
    
    * Remove unnecessary files
    
    * Mark packages as non packable
    
    * Fix build
    
    * Address feedback
    
    * Fix build
    
    * Fix remaining warnings
    
    * Feedback
    
    * Feedback and cleanup
    
    * Cleanup
    
    * Cleanups
    
    * Cleanups
    
    * Cleanups
    
    * Retrieve existing messages from the store to send them along the way and update the sample client
    
    * Run dotnet format
    
    * Add ADR for AG-UI
    
    * Switch to use the SG and use a convention for run ids
    
    * Cleanup MapAGUI API
    
    * Fix formatting
    
    * Fix solution
    
    * Fix solution
  • .NET: [Breaking Change] Moving MAAI.AzureAI V1 Package -> MAAI.AzureAI.Persistent (V1) (#1902)
    * Update AzureAI -> AzureAI.Persistent
    
    * Fix sample reference
  • .NET: [BREAKING] Simplify TextSearchProvider construction and improve Mem0Provider scoping. (#1905)
    * Simplify TextSearchProvider construction and improve Mem0Provider scoping
    
    * Fixing indentation.
  • .NET: Improve fidelity of OpenAI ChatCompletions Hosting (#1785)
    * rename, support json serialization
    
    * wip
    
    * non-streaming
    
    * streaming?
    
    * proper streaming types
    
    * comments + fix audio parse
    
    * copilot suggestions
    
    * proper stopsequences type
    
    * build options as i could
    
    * annotations
    
    * proper generation of Id for chatcompletions
    
    * string length as in chatcompletions api ref
    
    * image url
    
    * support tools
    
    * rework API
    
    * introduce tests for chatcompletions
    
    * function calling / serialization tests / fixes
    
    * more tests and coverage
    
    * fix format
    
    * sort usings
    
    * nit
    
    * address PR comments
    
    * nits
  • .NET: Make sure Workflow activities are as expected (#1903)
    * Make sure Workflow activities are as expected
    
    * misc
    
    * Copliot comments
    
    * Fix unit tests
    
    * Improve test stability
    
    * Fix unit tests
    
    * Fix formatting
  • Python: .NET: Updated package version and small fix (#1911)
    * Removed public key
    
    * Updated package version
    
    * Updated Python package versions
  • .NET: Add additional error handling to existing providers. (#1837)
    * Add additional error handling to existing providers.
    
    * Add additional information when logging mem0 messages.
    
    * Fix formatting.
  • .NET: Add rag samples with sample TextSearchStore (#1664)
    * Port store for adding text to a vector store to AF
    
    * Fix typo.
    
    * Change TextSearchStore to sample, and add sample to use it and do rag with a custom schema
    
    * Add more tests and fix broken ones
    
    * Fix merge issue
    
    * Fix sample after merge.
    
    * Convert TextSearchStore to use Dynamic mode to be AOT compatible.
    
    * Add some more clarification on when to use assistant messages in rag searches.
  • .NET: [BREAKING] Unify ExecutorIsh and ExecutorRegistration, unify/simplify APIs (#1637)
    * refactor: Unify ExecutorIsh and ExecutorRegistration => ExecutorBinding
    
    * Switch to more modern Record type-tree for Sum Types
    * Unify APIs for getting ExecutorBinding
    * Fix an issue where workflows consisting entirely of cross-run shareable executors which are not instance-resettable do not properly clear state when running non-concurrently.
    
    * feat: Simplify function-to-executor pattern
    
    * refactor: Normalize API naming
  • .NET: Peibekwe/workflows cancellation token fix (#1740)
    * Propagate cancellation token down the stack
    
    * Added unit tests to cover workflow cancellation scenarios
    
    * Updated tests based on feedback to simplify assert.
    
    * Create custom AsyncEnumrable to gracefully handle cancellation for Channel reader. Tailor cancellation tests to declarative scenarios.
    
    * Update comment and naming for readability.
    
    * Fixing minor stylistic recommendation.
    
    ---------
    
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>