Commit Graph

95 Commits

  • Python: feat(mcp): add full _meta field support for CallToolResult objects (#2286)
    * feat(mcp): add full _meta field support for CallToolResult objects
    
    - Extract and preserve complete _meta field from MCP CallToolResult responses
    - Merge metadata into additional_properties of converted content items
    - Handle isError field for proper error state integration
    - Support arbitrary metadata like token usage, costs, and performance metrics
    - Maintain backward compatibility with existing tool execution workflows
    - Add comprehensive test coverage for all metadata scenarios including edge cases
    - Update documentation with metadata handling examples and patterns
    
    Fixes protocol compliance violation where _meta fields were being dropped,
    enables proper monitoring and cost tracking of MCP tool usage.
    
    * Update python/packages/core/agent_framework/_mcp.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Clarify MCP _meta field test to use generic example metadata
    
    - Updated test_mcp_call_tool_result_with_meta_arbitrary_data to use arbitrary metadata fields
    - Added comments to emphasize that _meta structure is server-specific and not standardized
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
  • Python: Feature/azure ai search agentic rag (search as separate package) (#2328)
    * Python: Fix pyright errors and move search provider to core (#1546)
    
    * address pablo coments
    
    * update azure ai search pypi version to latest prev
    
    * init update
    
    * Fix MyPy type annotation errors in search provider
    
    - Add type annotation to DEFAULT_CONTEXT_PROMPT
    - Add type annotation to vectorizable_fields
    - Add union type annotation to vector_queries
    
    * Fix DEFAULT_CONTEXT_PROMPT MyPy error and update test
    
    - Rename DEFAULT_CONTEXT_PROMPT to _DEFAULT_SEARCH_CONTEXT_PROMPT to avoid conflict with base class Final variable
    - Update test to use new constant name
    - All core package tests passing (1123 passed)
    
    * Python: Move Azure AI Search to separate package per PR feedback
    
    Addresses reviewer feedback from PR #1546 by isolating the beta dependency
    (azure-search-documents==11.7.0b2) into a new agent-framework-aisearch package.
    
    Changes:
    - Created new agent-framework-aisearch package with complete structure
    - Moved AzureAISearchContextProvider from core to aisearch package
    - Added AzureAISearchSettings class for environment variable auto-loading
    - Added support for direct API key string (auto-converts to AzureKeyCredential)
    - Added azure_openai_api_key parameter for Knowledge Base authentication
    - Updated embedding_function type to Callable[[str], Awaitable[list[float]]]
    - Moved Role import to top-level imports
    - Maintained lazy loading through agent_framework.azure module
    - Removed beta dependency from core package
    - Updated all tests to use new package location
    - All quality checks pass: ruff format/lint, pyright, mypy (0 errors)
    - All 21 unit tests pass with 59% coverage
    
    Semantic search mode verified working with both API key and managed identity authentication.
    
    馃 Generated with [Claude Code](https://claude.com/claude-code)
    
    Co-Authored-By: Claude <noreply@anthropic.com>
    
    * Python: Clarify top_k parameter only applies to semantic mode
    
    Updated documentation to clarify that the top_k parameter only affects
    semantic search mode. In agentic mode, the server-side Knowledge Base
    determines retrieval based on query complexity and reasoning effort.
    
    馃 Generated with [Claude Code](https://claude.com/claude-code)
    
    Co-Authored-By: Claude <noreply@anthropic.com>
    
    * Python: Add Knowledge Base output mode and retrieval reasoning effort parameters
    
    Added support for configurable Knowledge Base behavior in agentic mode:
    
    - knowledge_base_output_mode: "extractive_data" (default) or "answer_synthesis"
      Some knowledge sources require answer_synthesis mode for proper functionality.
    
    - retrieval_reasoning_effort: "minimal" (default), "medium", or "low"
      Controls query planning complexity and multi-hop reasoning depth.
    
    These parameters give users fine-grained control over Knowledge Base behavior
    and enable support for knowledge sources that require answer synthesis.
    
    馃 Generated with [Claude Code](https://claude.com/claude-code)
    
    Co-Authored-By: Claude <noreply@anthropic.com>
    
    * effort and outputmode query params
    
    * Address PR review feedback for Azure AI Search context provider
    
    * comments eduward
    
    * ed latest comments
    
    ---------
    
    Co-authored-by: Farzad Sunavala <farzad.sunavala.enovate.ai>
    Co-authored-by: farzad528 <farzad528@users.noreply.github.com>
    Co-authored-by: Claude <noreply@anthropic.com>
  • fix(observability): handle datetime serialization in tool results (#2248)
    Fixes #2219
    
    Adds default=str to json.dumps() calls to handle non-JSON-serializable
    types like datetime objects in tool function results.
    
    Co-authored-by: kishikawa-hayato <84244732+HerBest-max@users.noreply.github.com>
  • Python: Fix tool execution bleed-over in aiohttp/Bot Framework scenarios (#2314)
    * Deep copy the agent chat options to avoid mutations
    
    * avoiding _thread.RLock pickling errors
  • Python: Clean up imports (#2318)
    * chore: tidy imports
    
    * Update python/packages/azurefunctions/agent_framework_azurefunctions/_errors.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/packages/azurefunctions/agent_framework_azurefunctions/_callbacks.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * chore: revert stub file change
    
    * chore: trigger pre-commit hook, re-add `annotations` import
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
  • Python: Introducing support for declarative yaml spec (#2002)
    * first work on declarative
    
    * initial version of the declarative support
    
    * fix tests and mypy
    
    * fix parameters of functiontool
    
    * slight logic improvement
    
    * remove path until merge
    
    * updates from comments
    
    * create dispatcher and spec type, json_schema method
    
    * fix mypy, skipping model
    
    * updated lock
    
    * fixed declarative tests and renamed some other test files
    
    * refined loader
    
    * updated lock
    
    * fix mypy
    
    * added readme to samples folder
    
    * fixes from review
    
    * undid test file rename
  • Python: fix all to include the latest and made that single source of truth (#2303)
    * fix all to include the latest and made that single source of truth
    
    * add lab
  • Python: fix: @ai_function doesn't properly handle 'self' param (#2266)
    * Fixes Python: @ai_function doesn't properly handle 'self' param
    Fixes #1343
    
    * fix for declaration only funcs
    
    * fix mypy
  • Python: fix: resolve string annotations in FunctionExecutor (#2308)
    * fix: resolve string annotations in FunctionExecutor
    
    Enhance type hint validation in FunctionExecutor by importing `typing` and
    using `get_type_hints` to correctly resolve annotations.
    
    This fixes validation failures when `from __future__ import annotations`
    is enabled, which stores annotations as strings.
    
    Fixes #1808
    
    * Update python/packages/core/tests/workflow/test_function_executor_future.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * ran pre commit
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
  • Python: fix Langfuse observability to capture ChatAgent system instructions (#2316)
    Fix bug where ChatAgent system instructions were not captured in Langfuse
    traces due to incorrect attribute access.
    
    The observability code was attempting to retrieve instructions using
    getattr(self, "instructions", None), but ChatAgent stores instructions
    in self.chat_options.instructions. This caused system_instructions to
    always be None in Langfuse traces.
    
    Changed both _trace_agent_run and _trace_agent_run_stream functions
    to correctly retrieve instructions from chat_options.instructions.
    
    Fixes affect:
    - Line 1123: _trace_agent_run (non-streaming)
    - Line 1192: _trace_agent_run_stream (streaming)
  • Python: Improve WorkflowBuilder doc strings with code samples (#1960)
    * Improve WorkflowBuilder doc strings with code samples
    
    * Cleanup
  • Python: Add checkpoint save and restore hooks to executor (#2097)
    * Add checkpoint hooks
    
    * Deprecate get_executor_state and set_executor_state
    
    * Fix tests and samples
    
    * Add doc strings
    
    * Add sample
    
    * Fix import
    
    * Address comments and fix tests
    
    * Address comments
    
    * conditional import
  • Python: Updated package versions (#2238)
    * Updated package versions
    
    * Small fix
    
    * Small fix
  • Python: Fix: Prevent duplicate MCP tools and prompts (#1876) (#1890)
    * Fix: Prevent duplicate MCP tools and prompts (#1876)
    
    - Added deduplication logic in MCPTool.load_tools() method
    - Added deduplication logic in MCPTool.load_prompts() method
    - Track existing function names before loading from MCP server
    - Skip tools/prompts that are already registered in _functions list
    - Prevents 400 error from Azure AI Foundry caused by duplicate tool names
    
    The issue occurred because load_tools() was being called multiple times
    (during connect() and by notification handlers), causing tools to be
    appended without duplicate checking.
    
    Changes made:
    1. In load_tools(): Added existing_names set to track registered functions
    2. In load_tools(): Added check to skip tools already in existing_names
    3. In load_prompts(): Applied same deduplication pattern
    
    Testing:
    - Created unit test verifying deduplication logic
    - Confirmed duplicates are skipped correctly
    - Confirmed new functions are added correctly
    - Prevents duplicate tool names being sent to LLM
    
    Fixes #1876
    
    * Address review feedback: Prevent multiple calls to load_tools and load_prompts
    
    - Added _tools_loaded and _prompts_loaded flags to MCPTool class
    - Modified load_tools() to check if already loaded and return early
    - Modified load_prompts() to check if already loaded and return early
    - Moved test cases from test_mcp_fix.py to test_mcp.py
    - Added tests for multiple call prevention
    - Deleted separate test_mcp_fix.py file
    
    Addresses review feedback from @eavanvalkenburg:
    - Prevents accidental multiple calls to load_tools()
    - Prevents accidental multiple calls to load_prompts()
    - Test file now in proper location (test_mcp.py)
    
    * Address review feedback: Move flag checks to connect() and remove comments
    
    - Removed verbose comments from code
    - Moved _tools_loaded and _prompts_loaded checks to connect() method
    - Allows manual calls to load_tools() and load_prompts() for updates
    - Updated tests to reflect new behavior
    - connect() now prevents duplicate loading during connection
    - Users can still manually call load_tools()/load_prompts() to refresh
    
    Addresses feedback from @eavanvalkenburg
    
    * Fix: Code quality and formatting issues
    
    - Applied black formatting
    - Fixed ruff linting issues
    - All tests passing locally
    
    * chore: Re-run uv lock per review request
    
    * Apply pre-commit formatting: consolidate type annotations
    
    - Consolidate multi-line type annotations to single line
    - Remove unnecessary parentheses
    - Apply ruff format and security checks
  • Python: Updated package versions (#2165)
    * Updated package versions
    
    * Reverted package version update for ag-ui
    
    * Updated changelog file
  • .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>
  • Python: Azure AI client based on new azure-ai-projects package (#1910)
    * Added changes (#1909)
    
    * Python: [Feature Branch] Renamed Azure AI agent and small fixes (#1919)
    
    * Renaming
    
    * Small fixes
    
    * Update python/packages/core/agent_framework/openai/_shared.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Small fix
    
    * Python: [Feature Branch] Added use_latest_version parameter to AzureAIClient (#1959)
    
    * Added use_latest_version parameter to AzureAIClient
    
    * Added unit tests
    
    * Update python/samples/getting_started/agents/azure_ai/azure_ai_use_latest_version.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/packages/azure-ai/agent_framework_azure_ai/_client.py
    
    Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com>
    
    * Python: [Feature Branch] Structured Outputs and more examples for AzureAIClient (#1987)
    
    * Small updates
    
    * Added support for structured outputs
    
    * Added code interpreter example
    
    * More examples and fixes
    
    * Added more examples and README
    
    * Small fix
    
    * Addressed PR feedback
    
    * Removed optional ID from FunctionResultContent (#2011)
    
    * Added hosted MCP support (#2018)
    
    * Python: [Feature Branch] Fixed "store" parameter handling (#2069)
    
    * Fixed store parameter handling
    
    * Small fix
    
    * Python: [Feature Branch] Added more examples and fixes for Azure AI agent (#2077)
    
    * Updated azure-ai-projects package version
    
    * Added an example of hosted MCP with approval required
    
    * Updated code interpreter example
    
    * Added file search example
    
    * Update python/samples/getting_started/agents/azure_ai/azure_ai_with_file_search.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/samples/getting_started/agents/azure_ai/azure_ai_with_file_search.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Small fix
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Added handling for conversation_id (#2098)
    
    * Merge from main
    
    * Revert "Merge from main"
    
    This reverts commit b8206a85d7.
    
    * Python: [Feature Branch] Merge from main to Azure AI branch (#2111)
    
    * Do not build DevUI assets during .NET project build (#2010)
    
    * .NET: Add unit tests for declarative executor SetMultipleVariables (#2016)
    
    * Add unit tests for create conversation executor
    
    * Update indentation and comment typo.
    
    * Added unit tests for declarative executor SetMultipleVariablesExecutor
    
    * Updated comments and syntactic sugar
    
    * 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: 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: Add OpenAI Responses API proxy support  + HIL for Workflows (#1737)
    
    * 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
    
    ---------
    
    Co-authored-by: Mark Wallace <127216156+markwallace-microsoft@users.noreply.github.com>
    
    * .NET: Remove launchSettings.json from .gitignore in dotnet/samples (#2006)
    
    * Remove launchSettings.json from .gitignore in dotnet/samples
    
    * Update dotnet/samples/GettingStarted/DevUI/DevUI_Step01_BasicUsage/Properties/launchSettings.json
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/samples/AGUIClientServer/AGUIServer/Properties/launchSettings.json
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * DevUI: Serialize workflow input as string to maintain conformance with OpenAI Responses format (#2021)
    
    Co-authored-by: Victor Dibia <chuvidi2003@gmail.com>
    
    * Add Microsoft Agent Framework logo to assets (#2007)
    
    * Updated package versions (#2027)
    
    * DevUI: Prevent line breaks within words in the agent view (#2024)
    
    Co-authored-by: Victor Dibia <chuvidi2003@gmail.com>
    
    * .NET [AG-UI]: Adds support for shared state. (#1996)
    
    * Product changes
    
    * Tests
    
    * Dojo project
    
    * Cleanups
    
    * Python: Fix underlying tool choice bug and all for return to previous Handoff subagent (#2037)
    
    * Fix tool_choice override bug and add enable_return_to_previous support
    
    * Add unit test for handoff checkpointing
    
    * Handle tools when we have them
    
    * added missing chatAgent params (#2044)
    
    * .NET: fix ChatCompletions Tools serialization (#2043)
    
    * fix serialization in chat completions on tools
    
    * nit
    
    * .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
    
    * Version 1.0.0-preview.251110.1 (#2048)
    
    * .NET: Remove moved OpenAPI sample and point to SK one. (#1997)
    
    * Remove moved OpenAPI sample and point to SK one.
    
    * Update dotnet/samples/GettingStarted/Agents/README.md
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Bump AWSSDK.Extensions.Bedrock.MEAI from 4.0.4.2 to 4.0.4.6 (#2031)
    
    ---
    updated-dependencies:
    - dependency-name: AWSSDK.Extensions.Bedrock.MEAI
      dependency-version: 4.0.4.6
      dependency-type: direct:production
      update-type: version-update:semver-patch
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    
    * .NET: Separate all memory and rag samples into their own folders (#2000)
    
    * Separate all memory and rag samples into their own folders
    
    * Fix broken link.
    
    * 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>
    
    * DevUI: support having both an agent and a workflow with the same id in discovery (#2023)
    
    * Python: Fix Model ID attribute not showing up in `invoke_agent` span (#2061)
    
    * Best effort to surface the model id to invoke agent span
    
    * Fix tests
    
    * Fix tests
    
    * Version 1.0.0-preview.251107.2 (#2065)
    
    * Version 1.0.0-preview.251110.2 (#2067)
    
    * Update README.md to change Grafana links to Azure portal links for dashboard access (#1983)
    
    * .NET - Enable build & test on branch `feature-foundry-agents` (#2068)
    
    * Tests good, mkay
    
    * Update .github/workflows/dotnet-build-and-test.yml
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Enable feature build pipelines
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Python: Add concrete AGUIChatClient (#2072)
    
    * Add concrete AGUIChatClient
    
    * Update logging docstrings and conventions
    
    * PR feedback
    
    * Updates to support client-side tool calls
    
    * .NET: Move catalog samples to the HostedAgents folder (#2090)
    
    * move catalog samples to the HostedAgents folder
    
    * move the catalog samples' projects to the HostedAgents folder
    
    * Bump OpenTelemetry.Instrumentation.Runtime from 1.12.0 to 1.13.0 (#1856)
    
    ---
    updated-dependencies:
    - dependency-name: OpenTelemetry.Instrumentation.Runtime
      dependency-version: 1.13.0
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    
    * .NET: Bump Microsoft.SemanticKernel.Agents.Abstractions from 1.66.0 to 1.67.0 (#1962)
    
    * Bump Microsoft.SemanticKernel.Agents.Abstractions from 1.66.0 to 1.67.0
    
    ---
    updated-dependencies:
    - dependency-name: Microsoft.SemanticKernel.Agents.Abstractions
      dependency-version: 1.67.0
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    
    * .NET: Bump all Microsoft.SemanticKernel packages from 1.66.* to 1.67.* (#1969)
    
    * Initial plan
    
    * Update all Microsoft.SemanticKernel packages to 1.67.*
    
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    
    * Remove unrelated changes to package-lock.json and yarn.lock
    
    Co-authored-by: markwallace-microsoft <127216156+markwallace-microsoft@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: markwallace-microsoft <127216156+markwallace-microsoft@users.noreply.github.com>
    
    ---------
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
    Co-authored-by: markwallace-microsoft <127216156+markwallace-microsoft@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.
    
    * Updated (#2076)
    
    * Bump vite in /python/samples/demos/chatkit-integration/frontend (#1918)
    
    Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.1.9 to 7.1.12.
    - [Release notes](https://github.com/vitejs/vite/releases)
    - [Changelog](https://github.com/vitejs/vite/blob/v7.1.12/packages/vite/CHANGELOG.md)
    - [Commits](https://github.com/vitejs/vite/commits/v7.1.12/packages/vite)
    
    ---
    updated-dependencies:
    - dependency-name: vite
      dependency-version: 7.1.12
      dependency-type: direct:development
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    
    * Bump Roslynator.Analyzers from 4.14.0 to 4.14.1 (#1857)
    
    ---
    updated-dependencies:
    - dependency-name: Roslynator.Analyzers
      dependency-version: 4.14.1
      dependency-type: direct:production
      update-type: version-update:semver-patch
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    
    * Bump MishaKav/pytest-coverage-comment from 1.1.57 to 1.1.59 (#2034)
    
    Bumps [MishaKav/pytest-coverage-comment](https://github.com/mishakav/pytest-coverage-comment) from 1.1.57 to 1.1.59.
    - [Release notes](https://github.com/mishakav/pytest-coverage-comment/releases)
    - [Changelog](https://github.com/MishaKav/pytest-coverage-comment/blob/main/CHANGELOG.md)
    - [Commits](https://github.com/mishakav/pytest-coverage-comment/compare/v1.1.57...v1.1.59)
    
    ---
    updated-dependencies:
    - dependency-name: MishaKav/pytest-coverage-comment
      dependency-version: 1.1.59
      dependency-type: direct:production
      update-type: version-update:semver-patch
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
    
    * Python: Handle agent user input request in AgentExecutor (#2022)
    
    * Handle agent user input request in AgentExecutor
    
    * fix test
    
    * Address comments
    
    * Fix tests
    
    * Fix tests
    
    * Address comments
    
    * Address comments
    
    * Python: OpenAI Responses Image Generation Stream Support, Sample and Unit Tests (#1853)
    
    * support for image gen streaming
    
    * small fixes
    
    * fixes
    
    * added comment
    
    * Python: Fix MCP Tool Parameter Descriptions Not Propagated to LLMs (#1978)
    
    * mcp tool description fix
    
    * small fix
    
    * .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>
    
    * Python: Use the last entry in the task history to avoid empty responses (#2101)
    
    * Use the last entry in the task history to avoid empty responses
    
    * History only contains Messages
    
    * Updated package versions (#2104)
    
    ---------
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: Reuben Bond <203839+ReubenBond@users.noreply.github.com>
    Co-authored-by: Peter Ibekwe <109177538+peibekwe@users.noreply.github.com>
    Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
    Co-authored-by: Daniel Roth <daroth@microsoft.com>
    Co-authored-by: Victor Dibia <chuvidi2003@gmail.com>
    Co-authored-by: Mark Wallace <127216156+markwallace-microsoft@users.noreply.github.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Shawn Henry <sphenry@gmail.com>
    Co-authored-by: Javier Calvarro Nelson <jacalvar@microsoft.com>
    Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com>
    Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com>
    Co-authored-by: Korolev Dmitry <deagle.gross@gmail.com>
    Co-authored-by: westey <164392973+westey-m@users.noreply.github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Reuben Bond <reuben.bond@gmail.com>
    Co-authored-by: Tao Chen <taochen@microsoft.com>
    Co-authored-by: wuweng <wuweng@microsoft.com>
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
    Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com>
    Co-authored-by: SergeyMenshykh <68852919+SergeyMenshykh@users.noreply.github.com>
    Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: Jacob Alber <jaalber@microsoft.com>
    Co-authored-by: Giles Odigwe <79032838+giles17@users.noreply.github.com>
    Co-authored-by: Daniel Cazzulino <daniel@cazzulino.com>
    Co-authored-by: kzu <169707+kzu@users.noreply.github.com>
    
    * Updated azure-ai-projects package version and small fixes (#2139)
    
    * Python: [Feature Branch] Resolve CI issues (#2143)
    
    * Small documentation and code fixes
    
    * Small fix in documentation
    
    * Addressed PR feedback
    
    * Added AI Search example
    
    ---------
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com>
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
    Co-authored-by: Reuben Bond <203839+ReubenBond@users.noreply.github.com>
    Co-authored-by: Peter Ibekwe <109177538+peibekwe@users.noreply.github.com>
    Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
    Co-authored-by: Daniel Roth <daroth@microsoft.com>
    Co-authored-by: Victor Dibia <chuvidi2003@gmail.com>
    Co-authored-by: Mark Wallace <127216156+markwallace-microsoft@users.noreply.github.com>
    Co-authored-by: Shawn Henry <sphenry@gmail.com>
    Co-authored-by: Javier Calvarro Nelson <jacalvar@microsoft.com>
    Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com>
    Co-authored-by: Korolev Dmitry <deagle.gross@gmail.com>
    Co-authored-by: westey <164392973+westey-m@users.noreply.github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Reuben Bond <reuben.bond@gmail.com>
    Co-authored-by: Tao Chen <taochen@microsoft.com>
    Co-authored-by: wuweng <wuweng@microsoft.com>
    Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com>
    Co-authored-by: SergeyMenshykh <68852919+SergeyMenshykh@users.noreply.github.com>
    Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: Jacob Alber <jaalber@microsoft.com>
    Co-authored-by: Giles Odigwe <79032838+giles17@users.noreply.github.com>
    Co-authored-by: Daniel Cazzulino <daniel@cazzulino.com>
    Co-authored-by: kzu <169707+kzu@users.noreply.github.com>
  • Python: fixed image handling in anthropic and added convenience method on datacontent (#2083)
    * fixed image handling in anthropic and added convenience method on datacontent
    
    * remove wheel path
    
    * updated docstrings
    
    * fixed image handling in anthropic and added convenience method on datacontent
    
    * remove wheel path
    
    * updated lock
  • Python: OpenAI Responses Image Generation Stream Support, Sample and Unit Tests (#1853)
    * support for image gen streaming
    
    * small fixes
    
    * fixes
    
    * added comment
  • Python: Handle agent user input request in AgentExecutor (#2022)
    * Handle agent user input request in AgentExecutor
    
    * fix test
    
    * Address comments
    
    * Fix tests
    
    * Fix tests
    
    * Address comments
    
    * Address comments
  • Python: Add concrete AGUIChatClient (#2072)
    * Add concrete AGUIChatClient
    
    * Update logging docstrings and conventions
    
    * PR feedback
    
    * Updates to support client-side tool calls
  • Python: Fix Model ID attribute not showing up in invoke_agent span (#2061)
    * Best effort to surface the model id to invoke agent span
    
    * Fix tests
    
    * Fix tests
  • Python: Fix underlying tool choice bug and all for return to previous Handoff subagent (#2037)
    * Fix tool_choice override bug and add enable_return_to_previous support
    
    * Add unit test for handoff checkpointing
    
    * Handle tools when we have them
  • Python: [Purview] Add Caching and background processing in Python Purview Middleware (#1844)
    * [PythonPurview] Add Caching and background processing
    
    * [PythonPurview] Updates based on comments
  • .NET: Python: Updated package versions (#1944)
    * Updated .NET version
    
    * Updated Python package versions
    
    * Updated changelog
  • Python: fix missing packaging dependency (#1929)
    * fix missing packaging dependency
    
    * add aiohttp to azureai
  • Python: add support for Python 3.14 (#1904)
    * add tests for py3.14 and add classifier
    
    * remove macos
    
    * allow openai v2
  • Python: Updates to Tools (#1835)
    * updated tool samples
    
    * mypy and readme fixes
    
    * updated call logic
    
    * added function invocation config
    
    * added include detailed error
    
    * added tests
    
    * updated FRC exception handling
    
    * updated tests
    
    * fix oai test
    
    * fix name in sample
    
    * imporoved tests coverage and removed some dead code paths
  • Python: feat: Add ChatKit integration with a sample application (#1273)
    * feat: Add ChatKit integration with a new frontend application
    
    - Created a new frontend application using React and Vite for the ChatKit integration.
    - Added essential files including package.json, vite.config.ts, and Tailwind CSS configuration.
    - Implemented core components: App, Home, ChatKitPanel, ThemeToggle, and hooks for color scheme management.
    - Established SQLite-based store implementation for ChatKit data persistence in store.py.
    - Integrated theme toggling functionality for light and dark modes.
    - Set up ESLint and TypeScript configurations for better development experience.
    
    * git ignore
    
    * fix mypy
    
    * add mising file
    
    * minimal frontend for chatkit sample
    
    * update ignore files
    
    * version
    
    * set python version lowerbound on chatkit
    
    * update project settings for chatkit
    
    * update setup
    
    * update setup
    
    * update setup
    
    * update setup
    
    * weather widget
    
    * add select city widget sample
    
    * remove widget helper
    
    * update chatkit to include file attachments and cover more thread item types
    
    * update readme with mermaid diagram
    
    * update diagram
    
    * update instructions
    
    * update chatkit dependency
    
    * fix converter imports
    
    * move to demos/
    
    * move to demos/ -- rename references
    
    * support multiple session instead of using global variable in sample
    
    * support chunk streaming
    
    * fix tests
    
    * Update python/samples/demos/chatkit-integration/store.py
    
    Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com>
    
    * use local host
    
    ---------
    
    Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com>
  • Python: .NET: Updated package version and small fix (#1911)
    * Removed public key
    
    * Updated package version
    
    * Updated Python package versions
  • Python: [BREAKING] consolidate workflow run APIs (#1723)
    * consolidate workflow run apis
    
    * improve validation, add tests
    
    * Proper code tags for docs
    
    * Update sample output
    
    * Remove cycle validation
    
    * PR feedback
    
    * Validation
    
    * Cleanup
  • Python: Introducing the Anthropic Client (#1819)
    * initial version of anthropic connector
    
    * updated implementation and added tests
    
    * fix type and readme
    
    * mypy fix and int tests enabled
    
    * add integration test setup
    
    * updated based on comments
    
    * improved function result handling
    
    * added extra unordered test
    
    * updated from review
    
    * fix tool choice handling
    
    * same fix for chat client
  • Python: fix middleware and cleanup confusing function (#1865)
    * fix middleware and cleanup redundant function
    
    * added test to validate
  • Python: Ensure agent thread is part of checkpoint (#1756)
    * ensure agent thread is part of checkpoint
    
    * Update python/packages/core/agent_framework/_workflows/_agent_executor.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * remove data copying for server side thread.
    
    * refine warning check
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
  • [BREAKING] Python: Remove request_type param from ctx.request_info() (#1824)
    * Remove request_type param from ctx.request_info()
    
    * Address comments
  • Python: [BREAKING] Cleanup of dependencies (#1803)
    * removed extra and non-released deps
    
    * added comments
    
    * added space and lock
    
    * fix pyright config
  • [BREAKING] Python: Replace RequestInfoExecutor with request_info API and @response_handler (#1466)
    * Prototype: Add request_info API and @response_handler
    
    * Add original_request as a parameter to the response handler
    
    * Prototype: request interception in sub workflows
    
    * Prototype: request interception in sub workflows 2
    
    * WIP: Make checkpointing work
    
    * checkpointing with sub workflow
    
    * Fix function executor
    
    * Allow sub-workflow to output directly
    
    * Remove ReqeustInfoExecutor and related classes; Debugging checkpoint_with_human_in_the_loop
    
    * Fix Handoff and sample
    
    * fix pending requests in checkpoint
    
    * Fix unit tests
    
    * Fix formatting
    
    * Resolve comments
    
    * Address comment
    
    * Add checkpoint tests
    
    * Add tests
    
    * misc
    
    * fix mypy
    
    * fix mypy
    
    * Use request type as part of the key
    
    * Log warning if there is not response handler for a request
    
    * Update Internal edge group comments
    
    * REcord message type in executor processing span
    
    * Update sample
    
    * Improve tests
  • Python: Fix type compatibility check (#1753)
    * Fix type compatibility check
    
    * Address comments