Skip to content

Conversation

@satyadevai
Copy link
Collaborator

@satyadevai satyadevai commented Oct 27, 2025

Closes #2376


Note

Handle output as string or list for tool/function call outputs, extracting input_text into message.contents.*.message_content.text; update tests accordingly.

  • Span attribute extraction (OpenAI agents):
    • Enhance /_processor.py to parse tool/function call output as either str or list.
      • For list outputs, extract input_text items into message.contents.{i}.message_content.text.
      • Leave TODOs for input_image and input_file types.
  • Tests:
    • Update expectations for empty/None outputs and add coverage for list-based outputs in tests/test_span_attribute_helpers.py.

Written by Cursor Bugbot for commit 96af527. This will update automatically on new commits. Configure here.

@satyadevai satyadevai requested a review from a team as a code owner October 27, 2025 14:51
@dosubot dosubot bot added the size:S This PR changes 10-29 lines, ignoring generated files. label Oct 27, 2025
cursor[bot]

This comment was marked as outdated.

@satyadevai satyadevai force-pushed the cannary-cron-ci-issues branch 2 times, most recently from 6d75c8d to def0286 Compare October 27, 2025 16:42
cursor[bot]

This comment was marked as outdated.

@satyadevai satyadevai force-pushed the cannary-cron-ci-issues branch from b9f4e97 to 5812f7b Compare October 27, 2025 17:08
@satyadevai satyadevai changed the title fix: CI issues for openai agents fix: CI issues for openai agents & Agno Oct 28, 2025
version = agno.__version__.split(".")
vcr_path = "team_coordinate_run.yaml"
if version[0] == "2" and version[1] == "1":
vcr_path = "team_coordinate_run21.yaml"
Copy link
Collaborator

@caroger caroger Oct 28, 2025

Choose a reason for hiding this comment

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

this is brittle, and test would fail again when agno 2.2 is released because it would use to recorded vcr yaml from older response again, correct?

  # Parse version into tuple for comparison
    version_parts = tuple(map(int, agno.__version__.split(".")[:2]))  # Major.minor only
    vcr_path = "team_coordinate_run21.yaml" if version_parts >= (2, 1) else "team_coordinate_run.yaml"

Copy link
Collaborator Author

@satyadevai satyadevai Oct 29, 2025

Choose a reason for hiding this comment

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

This change is not required as we are instrmenting the latest package of agno, also moved the changes related agno to different MR

@satyadevai satyadevai force-pushed the cannary-cron-ci-issues branch from 5812f7b to 8d2e2ad Compare October 29, 2025 13:43
@satyadevai satyadevai changed the title fix: CI issues for openai agents & Agno fix: CI issues for openai agents Oct 29, 2025
yield f"{prefix}{MESSAGE_CONTENT}", obj["output"]
# output can be str or complex type - serialize complex types to JSON
if output := obj.get("output"):
output_value = output if isinstance(output, str) else safe_json_dumps(output)
Copy link
Collaborator

Choose a reason for hiding this comment

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

do a type check here instead of runtime check.

assert never

@dosubot dosubot bot added size:M This PR changes 30-99 lines, ignoring generated files. and removed size:S This PR changes 10-29 lines, ignoring generated files. labels Nov 3, 2025
for i, item in enumerate(output):
if item["type"] == "input_text":
yield (
f"{prefix}{MESSAGE_CONTENTS}.{i}.{MESSAGE_CONTENT_TEXT}",
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@caroger, could you please confirm whether the attribute name is correct?. Based on my understanding, FunctionCallOutput can contain either a string or a List[Union[ResponseInputTextContentParam, ResponseInputImageContentParam, ResponseInputFileContentParam]]. I’ve assumed it will be a list of contents, so I’m passing these values as contents.

@satyadevai satyadevai requested a review from caroger November 4, 2025 04:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M This PR changes 30-99 lines, ignoring generated files.

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

[bug]Python CI failures for OpenAIAgents, Agno

2 participants