Update tool usage logging to ensure tool arguments are consistently formatted as strings. Adjust agent test cases to reflect changes in maximum iterations and expected outputs, enhancing clarity in assertions. Update YAML cassettes to align with new response formats and improve overall consistency across tests.

This commit is contained in:
Lorenze Jay
2025-03-31 16:42:51 -07:00
parent 570c7845fa
commit 802a4d079f
9 changed files with 4613 additions and 2851 deletions

View File

@@ -562,7 +562,7 @@ class ToolUsage:
"run_attempts": self._run_attempts,
"delegations": self.task.delegations if self.task else 0,
"tool_name": tool.name,
"tool_args": tool_calling.arguments,
"tool_args": str(tool_calling.arguments),
"tool_class": tool.__class__.__name__,
"agent_key": (
getattr(self.agent, "key", "unknown") if self.agent else "unknown"

View File

@@ -530,7 +530,7 @@ def test_agent_moved_on_after_max_iterations():
role="test role",
goal="test goal",
backstory="test backstory",
max_iter=3,
max_iter=5,
allow_delegation=False,
)
@@ -551,6 +551,7 @@ def test_agent_respect_the_max_rpm_set(capsys):
def get_final_answer() -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
agent = Agent(
role="test role",
@@ -572,7 +573,7 @@ def test_agent_respect_the_max_rpm_set(capsys):
task=task,
tools=[get_final_answer],
)
assert output == "The final answer is 42."
assert output == "42"
captured = capsys.readouterr()
assert "Max RPM reached, waiting for next minute to start." in captured.out
moveon.assert_called()

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -355,7 +355,7 @@ def test_tools_emits_finished_events():
assert received_events[0].agent_key == agent.key
assert received_events[0].agent_role == agent.role
assert received_events[0].tool_name == SayHiTool().name
assert received_events[0].tool_args == {}
assert received_events[0].tool_args == "{}" or received_events[0].tool_args == {}
assert received_events[0].type == "tool_usage_finished"
assert isinstance(received_events[0].timestamp, datetime)
@@ -401,7 +401,7 @@ def test_tools_emits_error_events():
assert received_events[0].agent_key == agent.key
assert received_events[0].agent_role == agent.role
assert received_events[0].tool_name == "error_tool"
assert received_events[0].tool_args == {}
assert received_events[0].tool_args == "{}" or received_events[0].tool_args == {}
assert str(received_events[0].error) == "Simulated tool error"
assert received_events[0].type == "tool_usage_error"
assert isinstance(received_events[0].timestamp, datetime)