refactor: use _should_sanitize_tool_calls in run_conversation()

Replaces hardcoded Mistral check with the new _should_sanitize_tool_calls()
method. Updates comment to mention Fireworks alongside Mistral as strict
APIs requiring tool_call field sanitization.
This commit is contained in:
Lume
2026-04-05 07:32:50 +01:00
committed by Teknium
parent 234c01f690
commit d90035835b

View File

@@ -6810,10 +6810,10 @@ class AIAgent:
if "finish_reason" in api_msg:
api_msg.pop("finish_reason")
# Strip Codex Responses API fields (call_id, response_item_id) for
# strict providers like Mistral that reject unknown fields with 422.
# strict providers like Mistral, Fireworks, etc. that reject unknown fields.
# Uses new dicts so the internal messages list retains the fields
# for Codex Responses compatibility.
if "api.mistral.ai" in self._base_url_lower:
if self._should_sanitize_tool_calls():
self._sanitize_tool_calls_for_strict_api(api_msg)
# Keep 'reasoning_details' - OpenRouter uses this for multi-turn reasoning context
# The signature field helps maintain reasoning continuity