test: cover fireworks tool-call payload sanitization
This commit is contained in:
parent
358dab52ce
commit
08208323f2
1 changed files with 46 additions and 0 deletions
|
|
@ -168,6 +168,52 @@ class TestBuildApiKwargsCustomEndpoint:
|
||||||
extra = kwargs.get("extra_body", {})
|
extra = kwargs.get("extra_body", {})
|
||||||
assert "reasoning" not in extra
|
assert "reasoning" not in extra
|
||||||
|
|
||||||
|
def test_fireworks_tool_call_payload_strips_codex_only_fields(self, monkeypatch):
|
||||||
|
agent = _make_agent(
|
||||||
|
monkeypatch,
|
||||||
|
"custom",
|
||||||
|
base_url="https://api.fireworks.ai/inference/v1",
|
||||||
|
)
|
||||||
|
messages = [
|
||||||
|
{"role": "user", "content": "hi"},
|
||||||
|
{
|
||||||
|
"role": "assistant",
|
||||||
|
"content": "Checking now.",
|
||||||
|
"codex_reasoning_items": [
|
||||||
|
{"type": "reasoning", "id": "rs_1", "encrypted_content": "blob"},
|
||||||
|
],
|
||||||
|
"tool_calls": [
|
||||||
|
{
|
||||||
|
"id": "call_fw_123",
|
||||||
|
"call_id": "call_fw_123",
|
||||||
|
"response_item_id": "fc_fw_123",
|
||||||
|
"type": "function",
|
||||||
|
"function": {
|
||||||
|
"name": "terminal",
|
||||||
|
"arguments": "{\"command\":\"pwd\"}",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{"role": "tool", "tool_call_id": "call_fw_123", "content": "/tmp"},
|
||||||
|
]
|
||||||
|
|
||||||
|
kwargs = agent._build_api_kwargs(messages)
|
||||||
|
|
||||||
|
assert kwargs["tools"][0]["function"]["name"] == "web_search"
|
||||||
|
assert "input" not in kwargs
|
||||||
|
assert kwargs.get("extra_body", {}) == {}
|
||||||
|
|
||||||
|
assistant_msg = kwargs["messages"][1]
|
||||||
|
tool_call = assistant_msg["tool_calls"][0]
|
||||||
|
|
||||||
|
assert "codex_reasoning_items" not in assistant_msg
|
||||||
|
assert tool_call["id"] == "call_fw_123"
|
||||||
|
assert tool_call["type"] == "function"
|
||||||
|
assert tool_call["function"]["name"] == "terminal"
|
||||||
|
assert "call_id" not in tool_call
|
||||||
|
assert "response_item_id" not in tool_call
|
||||||
|
|
||||||
|
|
||||||
class TestBuildApiKwargsCodex:
|
class TestBuildApiKwargsCodex:
|
||||||
def test_uses_responses_api_format(self, monkeypatch):
|
def test_uses_responses_api_format(self, monkeypatch):
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue