History

Merge pull request #1523 from xxddff/feature/removeUserField

fix(codex): remove unsupported 'user' field from /v1/responses payload

Luis Pater committed 9 months agov6.8.12

Commit a146c6c2 parents 4c133d3 bb9fe522 files · +20 −0Browse files

Unified · Split

2 files
  1. internal/translator/codex/openai/responses/codex_openai-responses_request.go +3 −0
  2. internal/translator/codex/openai/responses/codex_openai-responses_request_test.go +17 −0
internal/translator/codex/openai/responses/codex_openai-responses_request.go+3−0
@@ -27,6 +27,9 @@ func ConvertOpenAIResponsesRequestToCodex(modelName string, inputRawJSON []byte, · 26 unmodified lines
27 rawJSON, _ = sjson.DeleteBytes(rawJSON, "top_p")27 rawJSON, _ = sjson.DeleteBytes(rawJSON, "top_p")
28 rawJSON, _ = sjson.DeleteBytes(rawJSON, "service_tier")28 rawJSON, _ = sjson.DeleteBytes(rawJSON, "service_tier")
29 29
30 // Delete the user field as it is not supported by the Codex upstream.
31 rawJSON, _ = sjson.DeleteBytes(rawJSON, "user")
32
30 // Convert role "system" to "developer" in input array to comply with Codex API requirements.33 // Convert role "system" to "developer" in input array to comply with Codex API requirements.
31 rawJSON = convertSystemRoleToDeveloper(rawJSON)34 rawJSON = convertSystemRoleToDeveloper(rawJSON)
32 35
internal/translator/codex/openai/responses/codex_openai-responses_request_test.go+17−0
@@ -263,3 +263,20 @@ func TestConvertSystemRoleToDeveloper_AssistantRole(t *testing.T) { · 262 unmodified lines
263 t.Errorf("Expected third role 'assistant', got '%s'", thirdRole.String())263 t.Errorf("Expected third role 'assistant', got '%s'", thirdRole.String())
264 }264 }
265}265}
266
267func TestUserFieldDeletion(t *testing.T) {
268 inputJSON := []byte(`{
269 "model": "gpt-5.2",
270 "user": "test-user",
271 "input": [{"role": "user", "content": "Hello"}]
272 }`)
273
274 output := ConvertOpenAIResponsesRequestToCodex("gpt-5.2", inputJSON, false)
275 outputStr := string(output)
276
277 // Verify user field is deleted
278 userField := gjson.Get(outputStr, "user")
279 if userField.Exists() {
280 t.Errorf("user field should be deleted, but it was found with value: %s", userField.Raw)
281 }
282}