From 6170840a35f9d514f0f2bc12066d233a2dd38f87 Mon Sep 17 00:00:00 2001 From: Utsab Dahal Date: Sun, 12 Apr 2026 14:18:41 +0545 Subject: [PATCH] test(groq): add test_litellm regression for assistant metadata strip --- .../chat/test_groq_chat_transformation.py | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tests/test_litellm/llms/groq/chat/test_groq_chat_transformation.py diff --git a/tests/test_litellm/llms/groq/chat/test_groq_chat_transformation.py b/tests/test_litellm/llms/groq/chat/test_groq_chat_transformation.py new file mode 100644 index 00000000000..2fd95c565a3 --- /dev/null +++ b/tests/test_litellm/llms/groq/chat/test_groq_chat_transformation.py @@ -0,0 +1,31 @@ +from typing import List, cast + +from litellm.llms.groq.chat.transformation import GroqChatConfig +from litellm.types.llms.openai import AllMessageValues + + +def test_transform_messages_strips_assistant_provider_specific_fields() -> None: + """Groq payloads should not include LiteLLM internal assistant metadata.""" + config = GroqChatConfig() + messages = cast( + List[AllMessageValues], + [ + { + "role": "assistant", + "content": "Tool metadata", + "provider_specific_fields": { + "mcp_list_tools": [{"name": "weather"}], + "mcp_tool_calls": [{"id": "call_123"}], + }, + } + ], + ) + + transformed = cast( + List[AllMessageValues], + config._transform_messages(messages=messages, model="qwen/qwen3-32b"), + ) + + assert transformed[0]["role"] == "assistant" + assert transformed[0].get("content") == "Tool metadata" + assert "provider_specific_fields" not in transformed[0]