* Fix streaming path to deliver mcp_server_tool_result content (#4814)
Remove premature mcp_server_tool_result emission from the
response.output_item.added/mcp_call handler — at that point the MCP
server has not yet responded and output is always None.
Add a handler for response.mcp_call.completed that emits
mcp_server_tool_result with the actual tool output, matching the
non-streaming path behavior.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Fix streaming path to deliver mcp_server_tool_result content (#4814)
Stop eagerly emitting mcp_server_tool_result on response.output_item.added
(when output is always None). Instead, handle response.output_item.done for
mcp_call items, which carries the full McpCall with populated output.
This matches the non-streaming path which guards with 'if item.output is not
None' before emitting the result.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Fix test docstring to match actual implementation event name
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Address review: call_id fallback and raw_representation consistency (#4814)
- Add call_id fallback in response.output_item.done mcp_call handler to
match the output_item.added handler pattern
- Use done_item instead of event for raw_representation to keep
consistent with other output_item branches and non-streaming path
- Add test for call_id fallback when id attribute is missing
- Add raw_representation assertions to existing done handler tests
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Address review: call_id fallback for non-streaming path and test coverage (#4814)
- Apply defensive call_id fallback (getattr with id/call_id/empty) to
non-streaming mcp_call path for consistency with streaming path
- Add raw_representation assertion to call_id fallback test
- Add test for empty-string fallback when neither id nor call_id exist
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* added ChatClientBase with function calling
* streaming update
* fixed typing
* test setup
* small update
* src setup
* removed src, updated test naming
* fixed test command
* alolow args
* updated test run
* added unit test folder to azure
* added init and unit test to azure
* added other cross tests
* restructured
* reset test run
* fix name
* removed always
* updated test
* extend pytest.xml locations
* run surface always
* added decorators for FC and marked tests
* fixed mypy settings and added tests
* fix override import
* removed import
Eduard van Valkenburg
·
2025-07-10 09:18:15 +00:00