from typing import Final from unittest.mock import ANY from integration.translation.case import TranslationTestCase from integration.translation.responses.templates import RESPONSES_NATIVE_RESPONSE, RESPONSES_REQUEST from integration.translation.templates.openai import OPENAI_RESPONSES_REQUEST, OPENAI_RESPONSES_RESPONSE GPT_5_4_TEST_CASE: Final = TranslationTestCase( scenario="basic", litellm_endpoint="/v1/responses", litellm_request={ "model": "openai/gpt-5.4", "max_output_tokens": 64, "instructions": "You are a terse assistant.", "input": "Say hello.", "cache": {"no-cache": True}, }, expected_provider_endpoint="/responses", expected_provider_headers={"content-type": "application/json", "authorization": "Bearer synthetic-openai-key"}, expected_provider_request={ "model": "gpt-5.4", "input": "Say hello.", "instructions": "You are a terse assistant.", "max_output_tokens": 64, }, mock_provider_response={ "id": "resp_09266ad9f58a7706006ac3f0106a2c87d09155b2c4aed60612", "object": "response", "created_at": 1791225872, "status": "completed", "access_programs": {"cyber": "daybreak_blue"}, "background": False, "billing": {"payer": "developer"}, "completed_at": 1791225873, "error": None, "frequency_penalty": 0.0, "incomplete_details": None, "instructions": "You are a terse assistant.", "max_output_tokens": 64, "max_tool_calls": None, "model": "gpt-5.4-2026-03-05", "moderation": None, "output": [ { "id": "msg_09266ad9f58a7706006ac3f0111c0487d0834c20939578eaca", "type": "message", "status": "completed", "content": [{"type": "output_text", "annotations": [], "logprobs": [], "text": "Hello."}], "phase": "final_answer", "role": "assistant", } ], "parallel_tool_calls": True, "presence_penalty": 0.0, "previous_response_id": None, "prompt_cache_key": None, "prompt_cache_retention": "24h", "reasoning": {"context": "current_turn", "effort": "none", "mode": "standard", "summary": None}, "safety_identifier": None, "service_tier": "default", "store": True, "temperature": 1.0, "text": {"format": {"type": "text"}, "verbosity": "medium"}, "tool_choice": "auto", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "tools": [], "top_logprobs": 0, "top_p": 0.98, "truncation": "disabled", "usage": { "input_tokens": 19, "input_tokens_details": {"cache_write_tokens": 0, "cached_tokens": 0}, "output_tokens": 6, "output_tokens_details": {"reasoning_tokens": 0}, "total_tokens": 25, }, "user": None, "metadata": {}, }, expected_litellm_response={ "id": ANY, "created_at": 1791225872, "error": None, "incomplete_details": None, "instructions": "You are a terse assistant.", "metadata": {}, "model": "openai/gpt-5.4", "object": "response", "output": [ { "id": "msg_09266ad9f58a7706006ac3f0111c0487d0834c20939578eaca", "content": [{"annotations": [], "text": "Hello.", "type": "output_text", "logprobs": []}], "role": "assistant", "status": "completed", "type": "message", "phase": "final_answer", } ], "parallel_tool_calls": True, "temperature": 1.0, "tool_choice": "auto", "tools": [], "top_p": 0.98, "max_output_tokens": 64, "previous_response_id": None, "reasoning": {"context": "current_turn", "effort": "none", "mode": "standard", "summary": None}, "status": "completed", "text": {"format": {"type": "text"}, "verbosity": "medium"}, "truncation": "disabled", "usage": { "input_tokens": 19, "input_tokens_details": { "audio_tokens": None, "cached_tokens": 0, "cached_tokens_details": None, "image_tokens": None, "text_tokens": None, "video_tokens": None, "cache_write_tokens": 0, }, "output_tokens": 6, "output_tokens_details": {"audio_tokens": None, "reasoning_tokens": 0, "text_tokens": None}, "total_tokens": 25, "cost": None, }, "user": None, "store": True, "access_programs": {"cyber": "daybreak_blue"}, "background": False, "billing": {"payer": "developer"}, "completed_at": 1791225873, "frequency_penalty": 0.0, "max_tool_calls": None, "moderation": None, "presence_penalty": 0.0, "prompt_cache_key": None, "prompt_cache_retention": "24h", "safety_identifier": None, "service_tier": "default", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "top_logprobs": 0, }, ) GPT_5_6_SOL_TEST_CASE: Final = TranslationTestCase( scenario="basic", litellm_endpoint="/v1/responses", litellm_request={ "model": "openai/gpt-5.6-sol", "max_output_tokens": 64, "instructions": "You are a terse assistant.", "input": "Say hello.", "cache": {"no-cache": True}, }, expected_provider_endpoint="/responses", expected_provider_headers={"content-type": "application/json", "authorization": "Bearer synthetic-openai-key"}, expected_provider_request={ "model": "gpt-5.6-sol", "input": "Say hello.", "instructions": "You are a terse assistant.", "max_output_tokens": 64, }, mock_provider_response={ "id": "resp_0c9879957c1ae38c006ac3f013f1d487d0addcbd528bf79ce8", "object": "response", "created_at": 1791225875, "status": "completed", "access_programs": {"cyber": "daybreak_blue"}, "background": False, "billing": {"payer": "developer"}, "completed_at": 1791225876, "error": None, "frequency_penalty": 0.0, "incomplete_details": None, "instructions": "You are a terse assistant.", "max_output_tokens": 64, "max_tool_calls": None, "model": "gpt-5.6-sol", "moderation": None, "output": [ { "id": "msg_0c9879957c1ae38c006ac3f0146a0087d0a02d07eeff59b3c6", "type": "message", "status": "completed", "content": [{"type": "output_text", "annotations": [], "logprobs": [], "text": "Hello."}], "phase": "final_answer", "role": "assistant", } ], "parallel_tool_calls": True, "presence_penalty": 0.0, "previous_response_id": None, "prompt_cache_key": None, "prompt_cache_retention": "24h", "reasoning": {"context": "all_turns", "effort": "medium", "mode": "standard", "summary": None}, "safety_identifier": None, "service_tier": "default", "store": True, "temperature": 1.0, "text": {"format": {"type": "text"}, "verbosity": "medium"}, "tool_choice": "auto", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "tools": [], "top_logprobs": 0, "top_p": 0.98, "truncation": "disabled", "usage": { "input_tokens": 19, "input_tokens_details": {"cache_write_tokens": 0, "cached_tokens": 0}, "output_tokens": 6, "output_tokens_details": {"reasoning_tokens": 0}, "total_tokens": 25, }, "user": None, "metadata": {}, }, expected_litellm_response={ "id": ANY, "created_at": 1791225875, "error": None, "incomplete_details": None, "instructions": "You are a terse assistant.", "metadata": {}, "model": "openai/gpt-5.6-sol", "object": "response", "output": [ { "id": "msg_0c9879957c1ae38c006ac3f0146a0087d0a02d07eeff59b3c6", "content": [{"annotations": [], "text": "Hello.", "type": "output_text", "logprobs": []}], "role": "assistant", "status": "completed", "type": "message", "phase": "final_answer", } ], "parallel_tool_calls": True, "temperature": 1.0, "tool_choice": "auto", "tools": [], "top_p": 0.98, "max_output_tokens": 64, "previous_response_id": None, "reasoning": {"context": "all_turns", "effort": "medium", "mode": "standard", "summary": None}, "status": "completed", "text": {"format": {"type": "text"}, "verbosity": "medium"}, "truncation": "disabled", "usage": { "input_tokens": 19, "input_tokens_details": { "audio_tokens": None, "cached_tokens": 0, "cached_tokens_details": None, "image_tokens": None, "text_tokens": None, "video_tokens": None, "cache_write_tokens": 0, }, "output_tokens": 6, "output_tokens_details": {"audio_tokens": None, "reasoning_tokens": 0, "text_tokens": None}, "total_tokens": 25, "cost": None, }, "user": None, "store": True, "access_programs": {"cyber": "daybreak_blue"}, "background": False, "billing": {"payer": "developer"}, "completed_at": 1791225876, "frequency_penalty": 0.0, "max_tool_calls": None, "moderation": None, "presence_penalty": 0.0, "prompt_cache_key": None, "prompt_cache_retention": "24h", "safety_identifier": None, "service_tier": "default", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "top_logprobs": 0, }, ) GPT_5_6_LUNA_TEST_CASE: Final = TranslationTestCase( scenario="basic", litellm_endpoint="/v1/responses", litellm_request={ "model": "openai/gpt-5.6-luna", "max_output_tokens": 64, "instructions": "You are a terse assistant.", "input": "Say hello.", "cache": {"no-cache": True}, }, expected_provider_endpoint="/responses", expected_provider_headers={"content-type": "application/json", "authorization": "Bearer synthetic-openai-key"}, expected_provider_request={ "model": "gpt-5.6-luna", "input": "Say hello.", "instructions": "You are a terse assistant.", "max_output_tokens": 64, }, mock_provider_response={ "id": "resp_06fba2eaed98666c006ac3f0181d8c87d09e79c4255c5a24c4", "object": "response", "created_at": 1791225880, "status": "completed", "access_programs": {"cyber": "daybreak_blue"}, "background": False, "billing": {"payer": "developer"}, "completed_at": 1791225880, "error": None, "frequency_penalty": 0.0, "incomplete_details": None, "instructions": "You are a terse assistant.", "max_output_tokens": 64, "max_tool_calls": None, "model": "gpt-5.6-luna", "moderation": None, "output": [ { "id": "msg_06fba2eaed98666c006ac3f018dd9487d08c7e921025100a6d", "type": "message", "status": "completed", "content": [{"type": "output_text", "annotations": [], "logprobs": [], "text": "Hello!"}], "phase": "final_answer", "role": "assistant", } ], "parallel_tool_calls": True, "presence_penalty": 0.0, "previous_response_id": None, "prompt_cache_key": None, "prompt_cache_retention": "24h", "reasoning": {"context": "all_turns", "effort": "medium", "mode": "standard", "summary": None}, "safety_identifier": None, "service_tier": "default", "store": True, "temperature": 1.0, "text": {"format": {"type": "text"}, "verbosity": "medium"}, "tool_choice": "auto", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "tools": [], "top_logprobs": 0, "top_p": 0.98, "truncation": "disabled", "usage": { "input_tokens": 19, "input_tokens_details": {"cache_write_tokens": 0, "cached_tokens": 0}, "output_tokens": 6, "output_tokens_details": {"reasoning_tokens": 0}, "total_tokens": 25, }, "user": None, "metadata": {}, }, expected_litellm_response={ "id": ANY, "created_at": 1791225880, "error": None, "incomplete_details": None, "instructions": "You are a terse assistant.", "metadata": {}, "model": "openai/gpt-5.6-luna", "object": "response", "output": [ { "id": "msg_06fba2eaed98666c006ac3f018dd9487d08c7e921025100a6d", "content": [{"annotations": [], "text": "Hello!", "type": "output_text", "logprobs": []}], "role": "assistant", "status": "completed", "type": "message", "phase": "final_answer", } ], "parallel_tool_calls": True, "temperature": 1.0, "tool_choice": "auto", "tools": [], "top_p": 0.98, "max_output_tokens": 64, "previous_response_id": None, "reasoning": {"context": "all_turns", "effort": "medium", "mode": "standard", "summary": None}, "status": "completed", "text": {"format": {"type": "text"}, "verbosity": "medium"}, "truncation": "disabled", "usage": { "input_tokens": 19, "input_tokens_details": { "audio_tokens": None, "cached_tokens": 0, "cached_tokens_details": None, "image_tokens": None, "text_tokens": None, "video_tokens": None, "cache_write_tokens": 0, }, "output_tokens": 6, "output_tokens_details": {"audio_tokens": None, "reasoning_tokens": 0, "text_tokens": None}, "total_tokens": 25, "cost": None, }, "user": None, "store": True, "access_programs": {"cyber": "daybreak_blue"}, "background": False, "billing": {"payer": "developer"}, "completed_at": 1791225880, "frequency_penalty": 0.0, "max_tool_calls": None, "moderation": None, "presence_penalty": 0.0, "prompt_cache_key": None, "prompt_cache_retention": "24h", "safety_identifier": None, "service_tier": "default", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "top_logprobs": 0, }, ) GPT_6_LUNA_TEST_CASE: Final = TranslationTestCase( scenario="basic", litellm_endpoint="/v1/responses", litellm_request={**RESPONSES_REQUEST, "model": "openai/gpt-6-luna"}, expected_provider_endpoint="/responses", expected_provider_headers={ "content-type": "application/json", "authorization": "Bearer synthetic-openai-key", }, expected_provider_request={**OPENAI_RESPONSES_REQUEST, "model": "gpt-6-luna"}, mock_provider_response={ **OPENAI_RESPONSES_RESPONSE, "model": "gpt-6-luna", "id": "resp_042cbd1ba73eb559006ad0239f6dc087d08fd7ff5fff84b06a", "created_at": 1792025503, "access_programs": {"cyber": "daybreak_blue"}, "completed_at": 1792025506, "output": [ { "id": "rs_042cbd1ba73eb559006ad023a0481487d0aea8635e4b717121", "type": "reasoning", "content": [], "encrypted_content": "gAAAAABq0COiaJAwBRbzsaBwqI_w56uTvcixfz0ImWwpaGwIbCDMXDOodeG_MedwCPLjagtmdVPeq1GAF21VbUncSo2oasMY26z31MMbmZQPKUXWfts9Dajf6g-11D0hZMUupKeeUOT_rcE_GBj6smH3d1PUf-FBMEsY1VQy0gr0am-GUa0dZjw3ukAX0K10gkPCrrqRgp7mlfEi9kAwXhlQ1WEVm7IdHdZnGBbWzKaIRDVkULZQlh9NHIFYCP-2OQbnmqK9vyUxLj3vYXIXGv9B0V3-9TPe8AfDg2tm3AH-tJ-XXJ8D6xDG4E-1avSe4vUrYggFM7_6ztYSrimWqtJ_PfvRQF4cZfcCDf3vxxzLreg3y0jtuZnEOejZYybCa72ZDBbI9OSgNvAZBkU6k9DLT_tQf9uCvN1vtoiGXu0Sk4yr1fw-hAnuEVJK_Tb_FfQBNEk7ILVK7UJaX1rZWTFe2GLhsp6ctz3Kp-c2w2JD5ZHvV22EDQ5DmP8ng9l_5COYQGSsS9ZLiyd06agQ3PvQvBTg5XnDL46DtZ1yfVkB1cuwwlUiWkKD6MQ-VifToT3s4aG0q1Bnl9b_AvtOM0lG-TblA-mdOaRDz3c9s4QfbQjt6Z75oQcNr5QkUujZoV4YiynIBpec5i2gr6Uv0SMJZZbzjY5PLiogj_gvUDxwVbWJkuMXjEPJ3WHWMjceJE4sHwuM95zWV80Ul-MSXknlBj-AZJGQ44_wl0765P--vLyq18jfKDCdorP3Lvq6lYxnXooYMnZ-lFgnWo92OHfX97d6FCyQ46ygzQaRjrhQwUyAioAZiFtugMnHUm7t-EfNb_C7TjLeyXLiJ9iVlGHIt17VJMJIIq_xrQeMCOHAxUKgUE21XkSwsVPdJ0I-4_OP5l3IwkiV0pctG1x-oYX7kCaIYDus-dJUehQNJWNEa_r6QPfn7txUoxMrNCCIyzRUfH3hgwCHudDJ26dj15RPGfiP3wQmX8oZKdy5VkQcNPWb4Gv6b-cjyI7U-8VmwlodUN5FlCj-LJbeL8C8Wxuf1LRzDW-kxNadEhxlQaDSq4nQfTnGARMcmlH8-XqZfXK-3hJD84xHuyjTHq7aBr85gM6vISoYOHf6d-5GIr3-z9cTXvE7tCuxoJ7DdZYWzRK0Bws6tCerRuuvlVzQhlS_CsPwoel-eQ4SJucxvFBI_RaA3LYi3GtLqUPSKTAW6QqnQvyK-GvGvfDFxlgHgByGB0sf3dBAYLFKwHYspVsA4JqX8LDXNLJzMl5_9OkEsOkOcnTdPQSwImve3XZeM8mZwcHWRXOq6viGM9kGcVBrGZoqg--bUJZshNp2EdQivXJ4APh0E17Ro0gUSvvPTrwwI4m3MS0YHACkf1MbidrTxeyI7fiuADGpLKuC2n83Xbs7xjln0p-IwylsHOKs5cd6Jlrjf1RjyECm9jLMexUpSx5iBxcoIRG5TvyJA3SicZU-_psosM-7ABr7sWWy3F8_e1Q9cIze10_6U7XwqZjIUls007qiE97TFUX7YTlP0zTUwy4xmaSHW94LjhjaJnle49iDdqyRQJCdJbGNHPAhFSHGT6Iyy5vPADzIqPYmASOWxJ_7-IX9LRZQxa2NCRdXou0yAvbSbuq9LL3xFhJQ9S0pvJkY02np0GpMRlWXQpzHlww1i8ptRTsyELKGlrVJdPsdKc2d9ZgHGPvGVxG-e7ESPnA9m1aLP7vVH8NP2qnPSOGQk4SDEw6rxlv5Kjkv56kAXzdKj2PvxuclfWTxG5Peo84gaMNwP_Mi6S4XSuNJt7RhNdTEdQPFIQ0bNcc3O5jnz_xDw76mF3YvRMm_kXxdaOsFP9GSfzaEY56CQ9VGOkziwqrPwWu6fDT7VpkVvi58UDDWJdnk3G-nvcxGHLERU1es-Qy6Pe2qWOdY-nU70YSqgVIj5MMyx6XMJcYMeJDi5831kzr3VgOAggT8K-yYibn4_K2M0OHO0oQW-sUKsljU08Eu60C4MLrSJB40qJGCgwuiFwfXZfKckRmGE-oE6X8uS1ZIgd3S7OSCpYXfNSW7PlRAobBB2ArFFtacVEeH4pjmgcbrjkXHCV_ddCHvo26aBXh_AiBgJkjQ-oqrOS3pgC9J9U-coE-yfNbTl_UcdfFfusG6tvMNV8rl9Pkao6-pG9PTM9E25XZj0rEHOW_Vj9JMqX_kTEP7AKTJr8VZH_fKPbYR-EKlf12hStW--S5P4ng1hDFRcXcYAxmb9panxXRD2mxBBkEUGd3TdG4lxR02K0f9DaDJH2_-u3l4WKQdcGh1ma7m5RYl94o794hvNm2moOazjhIUWseixhZRM0AtS50RHzxaBl3t-vp4QA657xwts-Ng2ERKH2gDR1IIpA9rCvYjRo4Xwif9mTB7hYggs6YqrUZiIHrfNth9Am5e3B5z11hnxgGHPC0Rq1DodR1oV-rmyXM_L8-UpwUrM3Xbg31E_k0p7vIjn635OjUZt9aSe-yXEexGaDpxP5rUHQW3A-X4lZ3a_cL_786Dyzr9Sgma1bM2rpi3j5XfhpQe-DZk4KMP0C_d9rEcSoC46DTNjksrQkb421C5xpRoyJQ2-iSZBplpXRWX3GKwuiGvdtxCdSRcqZ0JHEf3ScOvOVs4gLpLRi5NcTuofbQYAsOATXtDzSPGd07h42Mk65qttYHLwVkt--4WPAIdsgU4SX_P", "summary": [], }, { "id": "msg_042cbd1ba73eb559006ad023a198dc87d0a13500a8fdffc2d3", "type": "message", "status": "completed", "content": [ { "type": "output_text", "annotations": [], "logprobs": [], "text": "I’ll read `shop/validation.py` first to see how it handles zero, negative, " "and non-integer quantities.", } ], "phase": "commentary", "role": "assistant", }, { "id": "fc_042cbd1ba73eb559006ad023a20c5487d09f05bf43be3ac720", "type": "function_call", "status": "completed", "arguments": '{"path":"shop/validation.py","start_line":1,"end_line":160}', "call_id": "call_YeruxIVkbMog0O7xEjBn8luk", "name": "read_file", }, ], "usage": { "input_tokens": 309, "input_tokens_details": {"cache_write_tokens": 0, "cached_tokens": 0}, "output_tokens": 159, "output_tokens_details": {"reasoning_tokens": 94}, "total_tokens": 468, }, }, expected_litellm_response={ **RESPONSES_NATIVE_RESPONSE, "id": ANY, "created_at": 1792025503, "model": "openai/gpt-6-luna", "output": [ { "id": "rs_042cbd1ba73eb559006ad023a0481487d0aea8635e4b717121", "summary": [], "type": "reasoning", "content": [], "encrypted_content": "gAAAAABq0COiaJAwBRbzsaBwqI_w56uTvcixfz0ImWwpaGwIbCDMXDOodeG_MedwCPLjagtmdVPeq1GAF21VbUncSo2oasMY26z31MMbmZQPKUXWfts9Dajf6g-11D0hZMUupKeeUOT_rcE_GBj6smH3d1PUf-FBMEsY1VQy0gr0am-GUa0dZjw3ukAX0K10gkPCrrqRgp7mlfEi9kAwXhlQ1WEVm7IdHdZnGBbWzKaIRDVkULZQlh9NHIFYCP-2OQbnmqK9vyUxLj3vYXIXGv9B0V3-9TPe8AfDg2tm3AH-tJ-XXJ8D6xDG4E-1avSe4vUrYggFM7_6ztYSrimWqtJ_PfvRQF4cZfcCDf3vxxzLreg3y0jtuZnEOejZYybCa72ZDBbI9OSgNvAZBkU6k9DLT_tQf9uCvN1vtoiGXu0Sk4yr1fw-hAnuEVJK_Tb_FfQBNEk7ILVK7UJaX1rZWTFe2GLhsp6ctz3Kp-c2w2JD5ZHvV22EDQ5DmP8ng9l_5COYQGSsS9ZLiyd06agQ3PvQvBTg5XnDL46DtZ1yfVkB1cuwwlUiWkKD6MQ-VifToT3s4aG0q1Bnl9b_AvtOM0lG-TblA-mdOaRDz3c9s4QfbQjt6Z75oQcNr5QkUujZoV4YiynIBpec5i2gr6Uv0SMJZZbzjY5PLiogj_gvUDxwVbWJkuMXjEPJ3WHWMjceJE4sHwuM95zWV80Ul-MSXknlBj-AZJGQ44_wl0765P--vLyq18jfKDCdorP3Lvq6lYxnXooYMnZ-lFgnWo92OHfX97d6FCyQ46ygzQaRjrhQwUyAioAZiFtugMnHUm7t-EfNb_C7TjLeyXLiJ9iVlGHIt17VJMJIIq_xrQeMCOHAxUKgUE21XkSwsVPdJ0I-4_OP5l3IwkiV0pctG1x-oYX7kCaIYDus-dJUehQNJWNEa_r6QPfn7txUoxMrNCCIyzRUfH3hgwCHudDJ26dj15RPGfiP3wQmX8oZKdy5VkQcNPWb4Gv6b-cjyI7U-8VmwlodUN5FlCj-LJbeL8C8Wxuf1LRzDW-kxNadEhxlQaDSq4nQfTnGARMcmlH8-XqZfXK-3hJD84xHuyjTHq7aBr85gM6vISoYOHf6d-5GIr3-z9cTXvE7tCuxoJ7DdZYWzRK0Bws6tCerRuuvlVzQhlS_CsPwoel-eQ4SJucxvFBI_RaA3LYi3GtLqUPSKTAW6QqnQvyK-GvGvfDFxlgHgByGB0sf3dBAYLFKwHYspVsA4JqX8LDXNLJzMl5_9OkEsOkOcnTdPQSwImve3XZeM8mZwcHWRXOq6viGM9kGcVBrGZoqg--bUJZshNp2EdQivXJ4APh0E17Ro0gUSvvPTrwwI4m3MS0YHACkf1MbidrTxeyI7fiuADGpLKuC2n83Xbs7xjln0p-IwylsHOKs5cd6Jlrjf1RjyECm9jLMexUpSx5iBxcoIRG5TvyJA3SicZU-_psosM-7ABr7sWWy3F8_e1Q9cIze10_6U7XwqZjIUls007qiE97TFUX7YTlP0zTUwy4xmaSHW94LjhjaJnle49iDdqyRQJCdJbGNHPAhFSHGT6Iyy5vPADzIqPYmASOWxJ_7-IX9LRZQxa2NCRdXou0yAvbSbuq9LL3xFhJQ9S0pvJkY02np0GpMRlWXQpzHlww1i8ptRTsyELKGlrVJdPsdKc2d9ZgHGPvGVxG-e7ESPnA9m1aLP7vVH8NP2qnPSOGQk4SDEw6rxlv5Kjkv56kAXzdKj2PvxuclfWTxG5Peo84gaMNwP_Mi6S4XSuNJt7RhNdTEdQPFIQ0bNcc3O5jnz_xDw76mF3YvRMm_kXxdaOsFP9GSfzaEY56CQ9VGOkziwqrPwWu6fDT7VpkVvi58UDDWJdnk3G-nvcxGHLERU1es-Qy6Pe2qWOdY-nU70YSqgVIj5MMyx6XMJcYMeJDi5831kzr3VgOAggT8K-yYibn4_K2M0OHO0oQW-sUKsljU08Eu60C4MLrSJB40qJGCgwuiFwfXZfKckRmGE-oE6X8uS1ZIgd3S7OSCpYXfNSW7PlRAobBB2ArFFtacVEeH4pjmgcbrjkXHCV_ddCHvo26aBXh_AiBgJkjQ-oqrOS3pgC9J9U-coE-yfNbTl_UcdfFfusG6tvMNV8rl9Pkao6-pG9PTM9E25XZj0rEHOW_Vj9JMqX_kTEP7AKTJr8VZH_fKPbYR-EKlf12hStW--S5P4ng1hDFRcXcYAxmb9panxXRD2mxBBkEUGd3TdG4lxR02K0f9DaDJH2_-u3l4WKQdcGh1ma7m5RYl94o794hvNm2moOazjhIUWseixhZRM0AtS50RHzxaBl3t-vp4QA657xwts-Ng2ERKH2gDR1IIpA9rCvYjRo4Xwif9mTB7hYggs6YqrUZiIHrfNth9Am5e3B5z11hnxgGHPC0Rq1DodR1oV-rmyXM_L8-UpwUrM3Xbg31E_k0p7vIjn635OjUZt9aSe-yXEexGaDpxP5rUHQW3A-X4lZ3a_cL_786Dyzr9Sgma1bM2rpi3j5XfhpQe-DZk4KMP0C_d9rEcSoC46DTNjksrQkb421C5xpRoyJQ2-iSZBplpXRWX3GKwuiGvdtxCdSRcqZ0JHEf3ScOvOVs4gLpLRi5NcTuofbQYAsOATXtDzSPGd07h42Mk65qttYHLwVkt--4WPAIdsgU4SX_P", }, { "id": "msg_042cbd1ba73eb559006ad023a198dc87d0a13500a8fdffc2d3", "content": [ { "annotations": [], "text": "I’ll read `shop/validation.py` first to see how it handles " "zero, negative, and non-integer quantities.", "type": "output_text", "logprobs": [], } ], "role": "assistant", "status": "completed", "type": "message", "phase": "commentary", }, { "arguments": '{"path":"shop/validation.py","start_line":1,"end_line":160}', "call_id": "call_YeruxIVkbMog0O7xEjBn8luk", "name": "read_file", "type": "function_call", "id": "fc_042cbd1ba73eb559006ad023a20c5487d09f05bf43be3ac720", "namespace": None, "status": "completed", }, ], "parallel_tool_calls": True, "temperature": 1.0, "tools": [ { "name": "search_files", "parameters": { "type": "object", "properties": { "query": {"type": "string"}, "paths": {"type": "array", "items": {"type": "string"}}, }, "required": ["query", "paths"], "additionalProperties": False, }, "strict": True, "type": "function", "defer_loading": None, "description": "Search source and test files for a literal term.", "output_schema": None, }, { "name": "read_file", "parameters": { "type": "object", "properties": { "path": {"type": "string"}, "start_line": {"type": "integer", "minimum": 1}, "end_line": {"type": "integer", "minimum": 1}, }, "required": ["path", "start_line", "end_line"], "additionalProperties": False, }, "strict": True, "type": "function", "defer_loading": None, "description": "Read a range of lines from a project file.", "output_schema": None, }, ], "top_p": 0.98, "reasoning": {"context": "all_turns", "effort": "high", "mode": "standard", "summary": None}, "text": {"format": {"type": "text"}, "verbosity": "medium"}, "truncation": "disabled", "usage": { "input_tokens": 309, "input_tokens_details": { "audio_tokens": None, "cached_tokens": 0, "cached_tokens_details": None, "image_tokens": None, "text_tokens": None, "video_tokens": None, "cache_write_tokens": 0, }, "output_tokens": 159, "output_tokens_details": {"audio_tokens": None, "reasoning_tokens": 94, "text_tokens": None}, "total_tokens": 468, "cost": None, }, "store": True, "access_programs": {"cyber": "daybreak_blue"}, "background": False, "billing": {"payer": "developer"}, "completed_at": 1792025506, "frequency_penalty": 0.0, "max_tool_calls": None, "moderation": None, "presence_penalty": 0.0, "prompt_cache_key": None, "prompt_cache_retention": "24h", "safety_identifier": None, "service_tier": "default", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "top_logprobs": 0, }, ) GPT_6_1_SOL_TEST_CASE: Final = TranslationTestCase( scenario="basic", litellm_endpoint="/v1/responses", litellm_request={**RESPONSES_REQUEST, "model": "openai/gpt-6.1-sol"}, expected_provider_endpoint="/responses", expected_provider_headers={ "content-type": "application/json", "authorization": "Bearer synthetic-openai-key", }, expected_provider_request={**OPENAI_RESPONSES_REQUEST, "model": "gpt-6.1-sol"}, mock_provider_response={ **OPENAI_RESPONSES_RESPONSE, "model": "gpt-6.1-sol", }, expected_litellm_response={ **RESPONSES_NATIVE_RESPONSE, "id": ANY, "created_at": 1792025514, "model": "openai/gpt-6.1-sol", "output": [ { "id": "rs_0207c20ae125feee006ad023abed4087d09d32a32ad2d3182c", "summary": [], "type": "reasoning", "content": [], "encrypted_content": "gAAAAABq0COvx3R_lOOaYJijiIokUKBq9tt_p3mhoPHnm4KR0Pj_t0wf1sP7WEDHfYSzylhHilYoKjU4guIz-TAqBV6HNUpIx5ggp3aukKEW6zks2ERT3a40sCFFdUdKHk6py5trFuwYn6lHLwifwDkd7rI7MKIP7C7pZSHnXh8cmfk0t96p4nBplQ93C4m917Kyx6PqvWSxPP78h5s_RMEdhkWRU20xMhminpIBNArOkPYT4xsmBEuONlndM5-DHG7ZeLk2yMZw8b_hxk2LZ4mC66b5RHfJKVKfw4egn4K8tkr8mQSR4bnjpY56DsIRj4fjSH5GpoDZyolFFBh1BNkGMoVsicye_4gZn0eELuOWxCw7lVVsMpIzTLw8CHJkCo_8vKtNCFSZcKjOPKDDfX1bsFJ7LMonmqijHPV_kZi_YXjVNNJBhJLiGjYrVUFZzjS0OKQx-RnZf5luO3UM2Ff3Ilvx1eQtuWlsvJjPBRwObzk5zlPEdYwoh5OjUREbgGb4H71Q7A9YYjUIms2h5e13Z5s8X0onRVr9SUcSbbMA0FXWn6QGQ5qgiQV56xec7xk62SrxKBXeILgBttBf68YfLAbdINCPL89G5Z1X2toQLlFM7e0jKYUOvSmpWyPLZ3q1040oDf2Q92v6NjOwk4WlLtZF_4xrZ7bEIWmea7zcDEnsvNBRdKaUbeUOm0SfRuIH4gQfbbueSqM3i12eK4TQhTbJ9VivUUovUv7pCKvizdQuunf2MMXWhq79wLYQYXIleQ06E9hbx6QT-Ue5ELQVC3NSLhXiwucOSqd-NZFDQA5wgW2Uaq_-bFYzNOPwtArfaqnHOILmr5mDvWCrlnLs-DUPHU-DtzYH7Eu1VSlcEZLaZX4vC9ui3x2aOpTtmVCILZpw7MkouVxSR4rFE48doVoCamJHhey-TZ7OMl0A5JdacTt6oUE8Z2HEcuVh9yGAZe_Q-YB3p4egLbxO8ICWUkwSSNgrPq3WRbT9sbT-Ko7N7KDAfgyvzzdEYMKDmci6GBrVsAiscc97-gxbhVhlrMyIXmgTluW07o591YjlOkvERXeJobEfby-VUJCu0cHd0nMudzrhCpHIhU3aUMkk9GMlSNDPFnKeV-gylycLhYRb0xo1kXMRom82fKmvUgO5Wh_BhsCdeGaVQ2bm5wyLT4x9VhEe-uOwaYG02XxoSiIFqqSrf0J8auFHIRpUTKzNWMK_GcIaU6o3ON0wOLKaga3wcyrGkG6wtvGkNLCrvmDIXg0bmvFGZrmybQvys_u636NXVS-Y9irqUv2ghu5tyKI_F8uwibi9JkKa5XcotQGbAToTE8qaHfowZOdTyjIKrU3BjL_Hs5M41KXwrNkk_X5ttJxEPW1qCjyusFb9yeGa9wzHMsp_VO0ysdO8L2KSRAY4LHpGI175VxUmnSg66PtCPln0OYxWsX2FWE1A7B_la662tO4VoS3bcslVZreRWFDJ_7X8qKx2fStxd77B7JkG1ZElxlZYlBRN5_Lo_w1yM9SvqHzzewQYEprSA1gltjxAbIzy7xXReaT86PNI8ojSLfXOkXa6Cybu3hIxsIomkZwTtAEx85BoIDn2B8oTp744Lwkwn4ualAfV9TebiqOWCUYp47fX9rimte71X6Hnvf7tWEBZMMwSb0pTqY0boMOS0w3XKKyEVRNyCoGWMgyvhAxk9E5iao5N6i5W3aSel27QwsUaE4YDGKKMKSryH3BqP6X7d0kdUcAx-nd5yudVbePQyc-UC7EbISj5QXY8g6cTOy-IkwpBe68DvfcNGIhuaH6UscqrewXQjKZFJC_BJSl-ICOfMw-FCTumzCDXPqTeLBPHf1g5kd5lBd6HLPUldHtJfD48V12KCRtaoksZ4g2NibuClnmZRpnDMPDUr7r_D8-RfoLEiJeh8SbOSnLvMPVAJIB95F73B-UX5u0e0aWeyfG5QjBq-kB7vVGsRiMyHEVQW810xo2qULVIyVO03s7rAWwTxFY-EHmKkaAIbKU2b-qAasytni7f1Aq61OSIYqSCRdFhpUX6HpnQeCFC_s6_Q9P3CFx120ZaTB_HPeRJO6dhVSJ3nL3PiNi8sCnhRiNIXkJfm9l1TxRS8ok9s1NY8oi4Y98J4Ay52EkX6f9F9FtWHNu4GX_Z50jDNnVTVqQo3L3slpwxECsTAEU-0MsmIa-1RqJ00VqBLKtIDVbbnQ==", }, { "id": "msg_0207c20ae125feee006ad023ade23487d093e272f84cb35723", "content": [ { "annotations": [], "text": "I’ll read `shop/validation.py` first to check how it handles " "zero, negative, and non-integer quantities.", "type": "output_text", "logprobs": [], } ], "role": "assistant", "status": "completed", "type": "message", "phase": "commentary", }, { "arguments": '{"path":"shop/validation.py","start_line":1,"end_line":200}', "call_id": "call_S4WtfrQwa6ZLEUZf1BVtA8ON", "name": "read_file", "type": "function_call", "id": "fc_0207c20ae125feee006ad023ae893c87d08068561e36e665ad", "namespace": None, "status": "completed", }, ], "parallel_tool_calls": True, "temperature": 1.0, "tools": [ { "name": "search_files", "parameters": { "type": "object", "properties": { "query": {"type": "string"}, "paths": {"type": "array", "items": {"type": "string"}}, }, "required": ["query", "paths"], "additionalProperties": False, }, "strict": True, "type": "function", "defer_loading": None, "description": "Search source and test files for a literal term.", "output_schema": None, }, { "name": "read_file", "parameters": { "type": "object", "properties": { "path": {"type": "string"}, "start_line": {"type": "integer", "minimum": 1}, "end_line": {"type": "integer", "minimum": 1}, }, "required": ["path", "start_line", "end_line"], "additionalProperties": False, }, "strict": True, "type": "function", "defer_loading": None, "description": "Read a range of lines from a project file.", "output_schema": None, }, ], "top_p": 0.98, "reasoning": {"context": "all_turns", "effort": "high", "mode": "standard", "summary": None}, "text": {"format": {"type": "text"}, "verbosity": "medium"}, "truncation": "disabled", "usage": { "input_tokens": 309, "input_tokens_details": { "audio_tokens": None, "cached_tokens": 0, "cached_tokens_details": None, "image_tokens": None, "text_tokens": None, "video_tokens": None, "cache_write_tokens": 0, }, "output_tokens": 118, "output_tokens_details": {"audio_tokens": None, "reasoning_tokens": 53, "text_tokens": None}, "total_tokens": 427, "cost": None, }, "store": True, "access_programs": None, "background": False, "billing": {"payer": "developer"}, "completed_at": 1792025519, "frequency_penalty": 0.0, "max_tool_calls": None, "moderation": None, "presence_penalty": 0.0, "prompt_cache_key": None, "prompt_cache_retention": "24h", "safety_identifier": None, "service_tier": "default", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "top_logprobs": 0, }, ) GPT_6_ASTRA_TEST_CASE: Final = TranslationTestCase( scenario="basic", litellm_endpoint="/v1/responses", litellm_request={**RESPONSES_REQUEST, "model": "openai/gpt-6-astra"}, expected_provider_endpoint="/responses", expected_provider_headers={ "content-type": "application/json", "authorization": "Bearer synthetic-openai-key", }, expected_provider_request={**OPENAI_RESPONSES_REQUEST, "model": "gpt-6-astra"}, mock_provider_response={ **OPENAI_RESPONSES_RESPONSE, "model": "gpt-6-astra", "id": "resp_0552d3d37f56f8e8006ad02393df1487d08cd567c9669c6b15", "created_at": 1792025491, "completed_at": 1792025495, "output": [ { "id": "rs_0552d3d37f56f8e8006ad02395050087d0954cb16260eceabd", "type": "reasoning", "content": [], "encrypted_content": "gAAAAABq0COXbYvBd4No2o1mKicIiH9j9eRzT8OGbkVyS-7zuUXSU6YKYudPsLUl2WsonyL61adFZSVoTsnF028sqP7sbKTb4PJS8w6eMYLETqeIxL20JUkHB93j798SzS50qm_X4_cSDnH7mh5rcnTNOcdk9BAlrjFTKuK_ARzCswFDmqH2mk4zZiD767r4iXv0QyxKxsEWq-exnoaJOw39XRFQQA_1ATo1J6dP6AmQkpmhQKlIY8NPKwNiR34X2jpN9yskz9PeJs_a1jA4R1m2Xh7ISAS2gmKX3vaBJL4sM8K7sV7KgAuSboorGK9N-L0737_zPJSKvnqI0-2uovkBaYzKwpfpUGs5zFK6zE6_eQJ5JLCCFUfarz_iIyQXMExN5jKoqD7rfP8eMjEAuW2OqWVrL6i-cnBp96G8erGV7y2uD0_iIbEJ6dj2dWE9u81jrpMilRDo4VRDeff7kpWCNYdvn_LRzgKwhDSLHunrZKp-yi3056kNaNDiw8ra9_BwrfEAduOnMvbdLNSCRKJ8WbkL4JNZU3KOfsDCeoqXRWHsJOgUXMjruTgDBKJccKjYF5kzhNRxeb4dAKZqKgEqvCV3QX9wQhXVEnqVct3KHU0QDQLYTs4EwfBTf_ReVWYtIowJrRZrtjW6Qdq9z7v6HY3-wiRkwnDoXJriySRuZviX3y3m4cwCe63gc3DqFvS22UWXk4cIw3XCdsJ5l-uJNWs_-FXUvGv4H2l2iunVPMWBVlorL-SdkGa9ftdpb7gPtZD8gxjryYO7vJO7Sjk1K7A0gqAZHvIwJMdFJxED0yxpPv7hEqw_3DFQDJr3elnjmOwHVBueWYggjN-6oyYJwQOo0o2_M3pyUsOuS8eGIm2TEL8LKXl-QeHbUbISQm_ZZYcUqwnhvTRlslx2Z9dTwgN5u2HwL1CArcAQ_j1pyAJIKoHCgIp7EWgS0zsgaiU1wJRs3aw1wzUQJ5EGKKkle3EIDJnhLA9l_UOQ1xAchhIExf76-eGuAiEQi7v0Gz6SMiLSlUH2xh7fyve3_mLuOYGidn73xCr91y8TjuAxRYiC0oJP6jYgUtVZ0MpWHYFwhdgtuVM-t4c3XNrNLpBqyWZl7ubi4Jy513NTqr4m4ExktN-5HkKkjb5P-35WccTeXVu8o_NN42ysHO3_mPwPe6-Jr3k-7CrwCPiEhR4rStyuitp_PeGBDPCVgW6vj7urfDe11zAZ84shO4yBVtG26c_CqtLq7MWxKQVrTLx1911InHrIDf7BJjFceVzfYiGEplBNT3OzBDJsbjmZYB_ppdiZeyaDSML93ysldny_6KYKx7cGcdHPyU4hVii-nlr0FdH_v9hngcWj4RUO6k9N9W3XHcmxoNLbX6calO2UMD4O94IiS-pLd-zpMdm-Bo5ncucxfMMc3WuCpVLDIpgzrfF_5F_9BYfO1PdYhCGclFfVij6znXR9CuKOXHhcUAG0kmUb_u_lyTpixNv-B4AJLgI1eONjazeSbGHxRwmVOFF11fIY28T3E0kHO940CxteM3eQKCxEUJmpOc6o1iPuy5jr8NOUrW_Bvp-QF1yS4SZHrSqvPUkUjpjzTy41KrbBgHqtoJ_8GwUrTLvUSPsec1nrErNMJE1oZB_6PDP477aer4gbZOil6N73kGVl2-2HeWMgOFh3qiosi71SsJJ9XmGV3bU7zPjLhtKsyoSOTlhmep-7Rs81V8MSvzhBqWBRA-EI2a07Cc24wsIRDgf366sg9tbbsOK3OdgXG3a3vyQNbflzbMnkRyqzzDCDmkWzRz_BBXydi19tKPPFuLpwEZ12oZE7bfy9uPaAfHMPNFPuZhcV3vVNaCgOX-hNht5RqRQTO8esmOemEtN0hpOEnc7cgS8xGNjMQBzvDnvXEU1eJSnwSkdWwUvlDz_OTwgorvzLcr20cHsZTCL9nP4F_-12eWJvn37at6uSJN3aNrDyWoUe9sSee0NiI3ne2seWkqi6wF8_mOxheeQBQcZtLL0agyGXg_YrcnvqjcUrOyjLNBEutMLMVCjVehyhKmYPh-WHzajm9d8hMD91juCft6ufCe52APO1TmNxqUuphA-gFT4Xo1crf7lx6QJVp8em2NmfNMFDVvx-xzi84epgkulTk95GLqH1ZtsXNt-WBinvx737nLtsA06iA9c946KfNTZxARfe9cb1VVjNo0cnFpTkO6GBVwZC83g540pmAdi57yjjFmTk7uf8sVF-ZQ2LheqVDs2VTl1Z74NJIFPH1tapSawFDL6jhFgekEWOAsUlTshMrhsBVfqY1rBw5JFQKOXfz7H33_KlmBBHl0EkRrqy75mHxuVRW9nxisCXg85lvEOAiOIizLu9HMEJvpmzDdkcZSrc3PvaYVRup5y6w2Pwr4Dj37t1y_ls3YPnnoVkyiXdCoP_wHxgFeUbfNAfKisQxbRy2d-VG_5hRul3F0AqGhr86rT0X1eTb752Up2eFoL6CfAtc5h-oIck8JdJbE34ELHCXg36hx1o1I-WnnHemhIJZGDDfyvGx-KQdoz55SkP4FMxsc-4SnQeOa7nn0-KruRaNTiq6NDhjCILlEZ6M6kIN7nDWYgZgsuWJCKqEoHbi4yodzpUpH9jr0kVlaP4R74WibiSmS-fdQIKnbh9tUcrF_rzbc1VIxI34ODmStok02kmDeao33n8CSb4WA_RW-glw3D138j-HGprBOHR1l0DdcOX0PPk1cvMzsz87b-RgnVVGmv-DqWKL1GgoUItHUp22wpOpPWLb6W71xPHmc2e0CuiqSsAd2Qz1lOYXImJk90BRX-09V4FOB7G9MIGZ5EJ-J4lirYTM5DZrNuU9RFGvi0Gv1EJa_9ejTm6kArC1D_SAXJqoLL8q647FxfyGzJPyhgQn3BbXfclnJRmMFeoZA==", "summary": [], }, { "id": "msg_0552d3d37f56f8e8006ad02396d75087d0a2c8b7137ba77a35", "type": "message", "status": "completed", "content": [ { "type": "output_text", "annotations": [], "logprobs": [], "text": "I’ll read `shop/validation.py` first to check how it handles zero, " "negative, and non-integer quantities.", } ], "phase": "commentary", "role": "assistant", }, { "id": "fc_0552d3d37f56f8e8006ad02397444087d09ede3b901e93cb70", "type": "function_call", "status": "completed", "arguments": '{"path":"shop/validation.py","start_line":1,"end_line":200}', "call_id": "call_wVrKXoGNLx7ClNV8cmG0E8pP", "name": "read_file", }, ], "usage": { "input_tokens": 309, "input_tokens_details": {"cache_write_tokens": 0, "cached_tokens": 0}, "output_tokens": 177, "output_tokens_details": {"reasoning_tokens": 112}, "total_tokens": 486, }, }, expected_litellm_response={ **RESPONSES_NATIVE_RESPONSE, "id": ANY, "created_at": 1792025491, "model": "openai/gpt-6-astra", "output": [ { "id": "rs_0552d3d37f56f8e8006ad02395050087d0954cb16260eceabd", "summary": [], "type": "reasoning", "content": [], "encrypted_content": "gAAAAABq0COXbYvBd4No2o1mKicIiH9j9eRzT8OGbkVyS-7zuUXSU6YKYudPsLUl2WsonyL61adFZSVoTsnF028sqP7sbKTb4PJS8w6eMYLETqeIxL20JUkHB93j798SzS50qm_X4_cSDnH7mh5rcnTNOcdk9BAlrjFTKuK_ARzCswFDmqH2mk4zZiD767r4iXv0QyxKxsEWq-exnoaJOw39XRFQQA_1ATo1J6dP6AmQkpmhQKlIY8NPKwNiR34X2jpN9yskz9PeJs_a1jA4R1m2Xh7ISAS2gmKX3vaBJL4sM8K7sV7KgAuSboorGK9N-L0737_zPJSKvnqI0-2uovkBaYzKwpfpUGs5zFK6zE6_eQJ5JLCCFUfarz_iIyQXMExN5jKoqD7rfP8eMjEAuW2OqWVrL6i-cnBp96G8erGV7y2uD0_iIbEJ6dj2dWE9u81jrpMilRDo4VRDeff7kpWCNYdvn_LRzgKwhDSLHunrZKp-yi3056kNaNDiw8ra9_BwrfEAduOnMvbdLNSCRKJ8WbkL4JNZU3KOfsDCeoqXRWHsJOgUXMjruTgDBKJccKjYF5kzhNRxeb4dAKZqKgEqvCV3QX9wQhXVEnqVct3KHU0QDQLYTs4EwfBTf_ReVWYtIowJrRZrtjW6Qdq9z7v6HY3-wiRkwnDoXJriySRuZviX3y3m4cwCe63gc3DqFvS22UWXk4cIw3XCdsJ5l-uJNWs_-FXUvGv4H2l2iunVPMWBVlorL-SdkGa9ftdpb7gPtZD8gxjryYO7vJO7Sjk1K7A0gqAZHvIwJMdFJxED0yxpPv7hEqw_3DFQDJr3elnjmOwHVBueWYggjN-6oyYJwQOo0o2_M3pyUsOuS8eGIm2TEL8LKXl-QeHbUbISQm_ZZYcUqwnhvTRlslx2Z9dTwgN5u2HwL1CArcAQ_j1pyAJIKoHCgIp7EWgS0zsgaiU1wJRs3aw1wzUQJ5EGKKkle3EIDJnhLA9l_UOQ1xAchhIExf76-eGuAiEQi7v0Gz6SMiLSlUH2xh7fyve3_mLuOYGidn73xCr91y8TjuAxRYiC0oJP6jYgUtVZ0MpWHYFwhdgtuVM-t4c3XNrNLpBqyWZl7ubi4Jy513NTqr4m4ExktN-5HkKkjb5P-35WccTeXVu8o_NN42ysHO3_mPwPe6-Jr3k-7CrwCPiEhR4rStyuitp_PeGBDPCVgW6vj7urfDe11zAZ84shO4yBVtG26c_CqtLq7MWxKQVrTLx1911InHrIDf7BJjFceVzfYiGEplBNT3OzBDJsbjmZYB_ppdiZeyaDSML93ysldny_6KYKx7cGcdHPyU4hVii-nlr0FdH_v9hngcWj4RUO6k9N9W3XHcmxoNLbX6calO2UMD4O94IiS-pLd-zpMdm-Bo5ncucxfMMc3WuCpVLDIpgzrfF_5F_9BYfO1PdYhCGclFfVij6znXR9CuKOXHhcUAG0kmUb_u_lyTpixNv-B4AJLgI1eONjazeSbGHxRwmVOFF11fIY28T3E0kHO940CxteM3eQKCxEUJmpOc6o1iPuy5jr8NOUrW_Bvp-QF1yS4SZHrSqvPUkUjpjzTy41KrbBgHqtoJ_8GwUrTLvUSPsec1nrErNMJE1oZB_6PDP477aer4gbZOil6N73kGVl2-2HeWMgOFh3qiosi71SsJJ9XmGV3bU7zPjLhtKsyoSOTlhmep-7Rs81V8MSvzhBqWBRA-EI2a07Cc24wsIRDgf366sg9tbbsOK3OdgXG3a3vyQNbflzbMnkRyqzzDCDmkWzRz_BBXydi19tKPPFuLpwEZ12oZE7bfy9uPaAfHMPNFPuZhcV3vVNaCgOX-hNht5RqRQTO8esmOemEtN0hpOEnc7cgS8xGNjMQBzvDnvXEU1eJSnwSkdWwUvlDz_OTwgorvzLcr20cHsZTCL9nP4F_-12eWJvn37at6uSJN3aNrDyWoUe9sSee0NiI3ne2seWkqi6wF8_mOxheeQBQcZtLL0agyGXg_YrcnvqjcUrOyjLNBEutMLMVCjVehyhKmYPh-WHzajm9d8hMD91juCft6ufCe52APO1TmNxqUuphA-gFT4Xo1crf7lx6QJVp8em2NmfNMFDVvx-xzi84epgkulTk95GLqH1ZtsXNt-WBinvx737nLtsA06iA9c946KfNTZxARfe9cb1VVjNo0cnFpTkO6GBVwZC83g540pmAdi57yjjFmTk7uf8sVF-ZQ2LheqVDs2VTl1Z74NJIFPH1tapSawFDL6jhFgekEWOAsUlTshMrhsBVfqY1rBw5JFQKOXfz7H33_KlmBBHl0EkRrqy75mHxuVRW9nxisCXg85lvEOAiOIizLu9HMEJvpmzDdkcZSrc3PvaYVRup5y6w2Pwr4Dj37t1y_ls3YPnnoVkyiXdCoP_wHxgFeUbfNAfKisQxbRy2d-VG_5hRul3F0AqGhr86rT0X1eTb752Up2eFoL6CfAtc5h-oIck8JdJbE34ELHCXg36hx1o1I-WnnHemhIJZGDDfyvGx-KQdoz55SkP4FMxsc-4SnQeOa7nn0-KruRaNTiq6NDhjCILlEZ6M6kIN7nDWYgZgsuWJCKqEoHbi4yodzpUpH9jr0kVlaP4R74WibiSmS-fdQIKnbh9tUcrF_rzbc1VIxI34ODmStok02kmDeao33n8CSb4WA_RW-glw3D138j-HGprBOHR1l0DdcOX0PPk1cvMzsz87b-RgnVVGmv-DqWKL1GgoUItHUp22wpOpPWLb6W71xPHmc2e0CuiqSsAd2Qz1lOYXImJk90BRX-09V4FOB7G9MIGZ5EJ-J4lirYTM5DZrNuU9RFGvi0Gv1EJa_9ejTm6kArC1D_SAXJqoLL8q647FxfyGzJPyhgQn3BbXfclnJRmMFeoZA==", }, { "id": "msg_0552d3d37f56f8e8006ad02396d75087d0a2c8b7137ba77a35", "content": [ { "annotations": [], "text": "I’ll read `shop/validation.py` first to check how it handles " "zero, negative, and non-integer quantities.", "type": "output_text", "logprobs": [], } ], "role": "assistant", "status": "completed", "type": "message", "phase": "commentary", }, { "arguments": '{"path":"shop/validation.py","start_line":1,"end_line":200}', "call_id": "call_wVrKXoGNLx7ClNV8cmG0E8pP", "name": "read_file", "type": "function_call", "id": "fc_0552d3d37f56f8e8006ad02397444087d09ede3b901e93cb70", "namespace": None, "status": "completed", }, ], "parallel_tool_calls": True, "temperature": 1.0, "tools": [ { "name": "search_files", "parameters": { "type": "object", "properties": { "query": {"type": "string"}, "paths": {"type": "array", "items": {"type": "string"}}, }, "required": ["query", "paths"], "additionalProperties": False, }, "strict": True, "type": "function", "defer_loading": None, "description": "Search source and test files for a literal term.", "output_schema": None, }, { "name": "read_file", "parameters": { "type": "object", "properties": { "path": {"type": "string"}, "start_line": {"type": "integer", "minimum": 1}, "end_line": {"type": "integer", "minimum": 1}, }, "required": ["path", "start_line", "end_line"], "additionalProperties": False, }, "strict": True, "type": "function", "defer_loading": None, "description": "Read a range of lines from a project file.", "output_schema": None, }, ], "top_p": 0.98, "reasoning": {"context": "all_turns", "effort": "high", "mode": "standard", "summary": None}, "text": {"format": {"type": "text"}, "verbosity": "medium"}, "truncation": "disabled", "usage": { "input_tokens": 309, "input_tokens_details": { "audio_tokens": None, "cached_tokens": 0, "cached_tokens_details": None, "image_tokens": None, "text_tokens": None, "video_tokens": None, "cache_write_tokens": 0, }, "output_tokens": 177, "output_tokens_details": {"audio_tokens": None, "reasoning_tokens": 112, "text_tokens": None}, "total_tokens": 486, "cost": None, }, "store": True, "access_programs": None, "background": False, "billing": {"payer": "developer"}, "completed_at": 1792025495, "frequency_penalty": 0.0, "max_tool_calls": None, "moderation": None, "presence_penalty": 0.0, "prompt_cache_key": None, "prompt_cache_retention": "24h", "safety_identifier": None, "service_tier": "default", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "top_logprobs": 0, }, ) GPT_5_6_TERRA_TEST_CASE: Final = TranslationTestCase( scenario="basic", litellm_endpoint="/v1/responses", litellm_request={**RESPONSES_REQUEST, "model": "openai/gpt-5.6-terra"}, expected_provider_endpoint="/responses", expected_provider_headers={ "content-type": "application/json", "authorization": "Bearer synthetic-openai-key", }, expected_provider_request={**OPENAI_RESPONSES_REQUEST, "model": "gpt-5.6-terra"}, mock_provider_response={ **OPENAI_RESPONSES_RESPONSE, "model": "gpt-5.6-terra", "id": "resp_01818bf6930dd01f006ad0238a1f4087d0a5a47aea04e9cd47", "created_at": 1792025482, "access_programs": {"cyber": "daybreak_blue"}, "completed_at": 1792025483, "output": [ { "id": "rs_01818bf6930dd01f006ad0238abb8c87d0be1dc53bb1de580f", "type": "reasoning", "content": [], "encrypted_content": "gAAAAABq0COL8ir7ZwXbPOmVEOgRTL-aqfraf_1ghm0mkA8sdY9ksq7Sk_hwTMNcBH1zIfS7hFMRLuTRtwXIntfzRjxwisfCfN1fr76Fy_Nx9M0lEUQjPrTL0hgfAjCYoiOptHRO-v5EKTApgnrKVxPxuwDMYQ3GdGAFmN15SNSaWaqpYRbP96XmcvnnMZHLE-BtfbVxtdxSXpVuGLgfCC-11NKJSIG7kZHKi0iSsQBs4tG_Ga3iy1ZDHvrmgduDHR357yfT-Zdufjgm_cQ_KgmSXzcIvzS4Fv3wwTiUzH1SpFfW58Bbbr7gf6fYeLyszpMAMAQePBntjXdNSFV3-DmtKz8HPcZ2UjeAkwQkBWLsJfJoS7XTKP4U2xriGSvVpoCV4vx-GSAGEZGyOt3TyY8jAqOPMViSPGOLWiId0upWOolJUV_nDqRGjKlk8K-k4b_B2k0RiGD6AbUi3_8Ru2i1V0rkA451uOideERDk4LPCVJlgIwtGXOy-jySI17HeYNBjrNtH1mFojojsjt6KIaj3a38r6Xh0fvUfQZAKJJXVqmSIgMebFOI4iiesJxDuVK2qlBTS3mE_FNAfw3AkmKqRUyvEARYNJU_0Yt31EEFAED3xJ-KpSzx-WAfJec-kIT-PiRxvod_PKXObT2u5kJwy9Z8FLj37K1mWYKHHpY9dYwnm0z9o49S4K_f-fIgoGzDtRybAPrglZlDFmf_RSSrVCGo-h_F4Z07wme4zUpnwbGq5I0KmNZVa3d_JlTXpjEPsyDHhK6VHGOvKvOpESgH-7zekvV2_NLheXsAKqpCe3eZ_yI5FkYma5Uiw5lE30GuCT7Dm__eoHllH1AajuIJMvUQ4kF9d1RPXCSk9l9WE34IesApxU--bT1wd1rqedZSsgOW9AkKAq1NC9QEhXG-83_7R0wuUcDeCSdWs4vWqJ0YDjIWEg9LliHm5fypEOW-qftdlBoDWzdqwqMu0XEJvTT1IXtZTNFhekrTgTLpaFJtGw6T8bsaY4csZnb-0jQ9IZyHaRRwPX8JKb3ajvdq_33v_8kLGrVRYjZmd2MwFf2ysaNu_Ob7mNd2UdopntQ98XCbPAkzvvsTPfRYVs4Nf8fg5vAd6QvPy7xoRYxrvQGkppeOVbcPI-EuJSqN_WhTmbXKOpl69MDDyR7xLfuIYLuAbiSO1lS74JuhIgyGkVvO-hUUxL2utZhZdjr_N8AAg0CTKxuMlURkfXRVWrSpm7pm_u-0Xmi4XkrMDb1he5vZmgebI7KiQGkX_jKISBrK0fLwNYWJwY_6cF0QjiIvUt2gucGr7GBUEKeIo3r7oPPEZ3IzBWbiVWHPpjDDJdtliwDAxtzhd-FQwq6N3Rnmj1_4HiUFT3Akj61CYaKXj4IUyamTUdUc3cLcXge2Drv3Kno0ysPf-EHTm0syMRk8URfO9WnFPnjJGH0hIsffSkApE0WJ0Hk8wdzZGvP0QnRZ5lLlEtOBftxW8_-9D457g9kUDiBbnYqOekuQKotQfWfrOKNcEuQeyV1wV1HNrbS4T9Ul6gKFgkDk-wWaciavm2eElMM13OjXJpPsnZpat3pCXxKqrmFLiB4G4NFASz0RzowbnaPoc6OEv2j-c8QzpXX0ftVM0jVsTnl_izTcEobOjU7ipFLBBalJN3aq9K8OYNPKE0fegSQ5ywtERUqk4-X83ggwpDBBZe8tfkPf0KxwRyVmExW4kcepm8zZUzLxeZbipirXd3awzxaD5q-NiN1tvZC7bqb3-cy5du0H_7OScR2QGy7Wt3u2m3zixab8j1foXw6vvBQgV31sTL5RSdZlFtbyI1yu2T9SeOLzfknx14nUCWGyZsLpP3MSCmAOTlHFF6HMa-hnkoWrCtJBuWdq2BuQ9Q==", "summary": [], }, { "id": "msg_01818bf6930dd01f006ad0238b00a487d0aaa092bcd2431bed", "type": "message", "status": "completed", "content": [ { "type": "output_text", "annotations": [], "logprobs": [], "text": "I need `shop/validation.py` next to inspect the validation branches for " "zero, negative, and non-integer inputs.", } ], "phase": "commentary", "role": "assistant", }, { "id": "fc_01818bf6930dd01f006ad0238b33dc87d0866bf763c4861a74", "type": "function_call", "status": "completed", "arguments": '{"path":"shop/validation.py","start_line":1,"end_line":200}', "call_id": "call_FI1PXRT2XNjueqLOd8GliYTF", "name": "read_file", }, ], "usage": { "input_tokens": 309, "input_tokens_details": {"cache_write_tokens": 0, "cached_tokens": 0}, "output_tokens": 100, "output_tokens_details": {"reasoning_tokens": 35}, "total_tokens": 409, }, }, expected_litellm_response={ **RESPONSES_NATIVE_RESPONSE, "id": ANY, "created_at": 1792025482, "model": "openai/gpt-5.6-terra", "output": [ { "id": "rs_01818bf6930dd01f006ad0238abb8c87d0be1dc53bb1de580f", "summary": [], "type": "reasoning", "content": [], "encrypted_content": "gAAAAABq0COL8ir7ZwXbPOmVEOgRTL-aqfraf_1ghm0mkA8sdY9ksq7Sk_hwTMNcBH1zIfS7hFMRLuTRtwXIntfzRjxwisfCfN1fr76Fy_Nx9M0lEUQjPrTL0hgfAjCYoiOptHRO-v5EKTApgnrKVxPxuwDMYQ3GdGAFmN15SNSaWaqpYRbP96XmcvnnMZHLE-BtfbVxtdxSXpVuGLgfCC-11NKJSIG7kZHKi0iSsQBs4tG_Ga3iy1ZDHvrmgduDHR357yfT-Zdufjgm_cQ_KgmSXzcIvzS4Fv3wwTiUzH1SpFfW58Bbbr7gf6fYeLyszpMAMAQePBntjXdNSFV3-DmtKz8HPcZ2UjeAkwQkBWLsJfJoS7XTKP4U2xriGSvVpoCV4vx-GSAGEZGyOt3TyY8jAqOPMViSPGOLWiId0upWOolJUV_nDqRGjKlk8K-k4b_B2k0RiGD6AbUi3_8Ru2i1V0rkA451uOideERDk4LPCVJlgIwtGXOy-jySI17HeYNBjrNtH1mFojojsjt6KIaj3a38r6Xh0fvUfQZAKJJXVqmSIgMebFOI4iiesJxDuVK2qlBTS3mE_FNAfw3AkmKqRUyvEARYNJU_0Yt31EEFAED3xJ-KpSzx-WAfJec-kIT-PiRxvod_PKXObT2u5kJwy9Z8FLj37K1mWYKHHpY9dYwnm0z9o49S4K_f-fIgoGzDtRybAPrglZlDFmf_RSSrVCGo-h_F4Z07wme4zUpnwbGq5I0KmNZVa3d_JlTXpjEPsyDHhK6VHGOvKvOpESgH-7zekvV2_NLheXsAKqpCe3eZ_yI5FkYma5Uiw5lE30GuCT7Dm__eoHllH1AajuIJMvUQ4kF9d1RPXCSk9l9WE34IesApxU--bT1wd1rqedZSsgOW9AkKAq1NC9QEhXG-83_7R0wuUcDeCSdWs4vWqJ0YDjIWEg9LliHm5fypEOW-qftdlBoDWzdqwqMu0XEJvTT1IXtZTNFhekrTgTLpaFJtGw6T8bsaY4csZnb-0jQ9IZyHaRRwPX8JKb3ajvdq_33v_8kLGrVRYjZmd2MwFf2ysaNu_Ob7mNd2UdopntQ98XCbPAkzvvsTPfRYVs4Nf8fg5vAd6QvPy7xoRYxrvQGkppeOVbcPI-EuJSqN_WhTmbXKOpl69MDDyR7xLfuIYLuAbiSO1lS74JuhIgyGkVvO-hUUxL2utZhZdjr_N8AAg0CTKxuMlURkfXRVWrSpm7pm_u-0Xmi4XkrMDb1he5vZmgebI7KiQGkX_jKISBrK0fLwNYWJwY_6cF0QjiIvUt2gucGr7GBUEKeIo3r7oPPEZ3IzBWbiVWHPpjDDJdtliwDAxtzhd-FQwq6N3Rnmj1_4HiUFT3Akj61CYaKXj4IUyamTUdUc3cLcXge2Drv3Kno0ysPf-EHTm0syMRk8URfO9WnFPnjJGH0hIsffSkApE0WJ0Hk8wdzZGvP0QnRZ5lLlEtOBftxW8_-9D457g9kUDiBbnYqOekuQKotQfWfrOKNcEuQeyV1wV1HNrbS4T9Ul6gKFgkDk-wWaciavm2eElMM13OjXJpPsnZpat3pCXxKqrmFLiB4G4NFASz0RzowbnaPoc6OEv2j-c8QzpXX0ftVM0jVsTnl_izTcEobOjU7ipFLBBalJN3aq9K8OYNPKE0fegSQ5ywtERUqk4-X83ggwpDBBZe8tfkPf0KxwRyVmExW4kcepm8zZUzLxeZbipirXd3awzxaD5q-NiN1tvZC7bqb3-cy5du0H_7OScR2QGy7Wt3u2m3zixab8j1foXw6vvBQgV31sTL5RSdZlFtbyI1yu2T9SeOLzfknx14nUCWGyZsLpP3MSCmAOTlHFF6HMa-hnkoWrCtJBuWdq2BuQ9Q==", }, { "id": "msg_01818bf6930dd01f006ad0238b00a487d0aaa092bcd2431bed", "content": [ { "annotations": [], "text": "I need `shop/validation.py` next to inspect the validation " "branches for zero, negative, and non-integer inputs.", "type": "output_text", "logprobs": [], } ], "role": "assistant", "status": "completed", "type": "message", "phase": "commentary", }, { "arguments": '{"path":"shop/validation.py","start_line":1,"end_line":200}', "call_id": "call_FI1PXRT2XNjueqLOd8GliYTF", "name": "read_file", "type": "function_call", "id": "fc_01818bf6930dd01f006ad0238b33dc87d0866bf763c4861a74", "namespace": None, "status": "completed", }, ], "parallel_tool_calls": True, "temperature": 1.0, "tools": [ { "name": "search_files", "parameters": { "type": "object", "properties": { "query": {"type": "string"}, "paths": {"type": "array", "items": {"type": "string"}}, }, "required": ["query", "paths"], "additionalProperties": False, }, "strict": True, "type": "function", "defer_loading": None, "description": "Search source and test files for a literal term.", "output_schema": None, }, { "name": "read_file", "parameters": { "type": "object", "properties": { "path": {"type": "string"}, "start_line": {"type": "integer", "minimum": 1}, "end_line": {"type": "integer", "minimum": 1}, }, "required": ["path", "start_line", "end_line"], "additionalProperties": False, }, "strict": True, "type": "function", "defer_loading": None, "description": "Read a range of lines from a project file.", "output_schema": None, }, ], "top_p": 0.98, "reasoning": {"context": "all_turns", "effort": "high", "mode": "standard", "summary": None}, "text": {"format": {"type": "text"}, "verbosity": "medium"}, "truncation": "disabled", "usage": { "input_tokens": 309, "input_tokens_details": { "audio_tokens": None, "cached_tokens": 0, "cached_tokens_details": None, "image_tokens": None, "text_tokens": None, "video_tokens": None, "cache_write_tokens": 0, }, "output_tokens": 100, "output_tokens_details": {"audio_tokens": None, "reasoning_tokens": 35, "text_tokens": None}, "total_tokens": 409, "cost": None, }, "store": True, "access_programs": {"cyber": "daybreak_blue"}, "background": False, "billing": {"payer": "developer"}, "completed_at": 1792025483, "frequency_penalty": 0.0, "max_tool_calls": None, "moderation": None, "presence_penalty": 0.0, "prompt_cache_key": None, "prompt_cache_retention": "24h", "safety_identifier": None, "service_tier": "default", "tool_usage": { "image_gen": { "input_tokens": 0, "input_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "output_tokens": 0, "output_tokens_details": {"image_tokens": 0, "text_tokens": 0}, "total_tokens": 0, }, "web_search": {"num_requests": 0}, }, "top_logprobs": 0, }, )