Files
odysseus/tests/test_tool_event_call_ids.py
T

46 lines
1.1 KiB
Python

from src.agent_loop import _resolved_tool_call_id
def test_preserves_native_model_tool_call_id():
assert _resolved_tool_call_id(
{"id": "chatcmpl-tool-exact"},
session_id="session-a",
round_num=2,
tool_index=1,
tool_name="write_file",
) == "chatcmpl-tool-exact"
def test_generates_stable_id_for_harness_follow_through_call():
kwargs = {
"session_id": "session-a",
"round_num": 2,
"tool_index": 1,
"tool_name": "private_browser",
}
first = _resolved_tool_call_id({}, **kwargs)
second = _resolved_tool_call_id(None, **kwargs)
assert first == second
assert first.startswith("odysseus-auto-")
def test_generated_ids_distinguish_tool_positions():
first = _resolved_tool_call_id(
None,
session_id="session-a",
round_num=2,
tool_index=1,
tool_name="inspect_media",
)
second = _resolved_tool_call_id(
None,
session_id="session-a",
round_num=2,
tool_index=2,
tool_name="inspect_media",
)
assert first != second