Skip to content

invalid_request_error: Invalid 'messages[XX].tool_calls[0].function.name': empty string. Expected a string with minimum length 1, but got an empty string instead. #7628

@timvw

Description

@timvw

What version of Codex is running?

codex-cli 0.65.0

What subscription do you have?

Azure OpenAI deployment

Which model were you using?

gpt-5.1-codex

What platform is your computer?

Darwin 25.1.0 arm64 arm

What issue are you seeing?

A simple session, simply saying "hi" is responded with:

{
  "error": {
    "message": "Invalid 'messages[5].tool_calls[0].function.name': empty string. Expected a string with minimum length 1, but got an empty string instead.",
    "type": "invalid_request_error",
    "param": "messages[5].tool_calls[0].function.name",
    "code": "empty_string"
  }
}

What steps can reproduce the bug?

Uploaded thread: 019aed70-d44c-7202-b4e1-3a2a1e3d1f9a

What is the expected behavior?

The assistant should respond normally to the greeting without errors. Tool call function names should be preserved from the initial SSE delta and not overwritten by empty strings in subsequent deltas.

Additional information

Related Issues:
This appears to be related to:

Root Cause:
The SSE streaming parser (since v0.64.0 / PR #6996) unconditionally overwrites tool call function names with values from subsequent deltas. Azure OpenAI and other providers send the tool name in the first delta, then send empty strings in subsequent deltas containing only arguments. The current parser overwrites the valid name with these empty strings.

Environment Notes:

  • Issue does NOT occur with ChatGPT Pro subscription (non-Azure)
  • Issue started in version 0.64.0 (worked correctly in 0.63.0)
  • Affects Azure OpenAI and other OpenAI-compatible providers (LM Studio, etc.)

Fix Status:
A fix has been developed that prevents empty strings from overwriting valid tool names during SSE delta parsing. See: https://github.com/timvw/codex/tree/fix/empty-tool-call-names

Metadata

Metadata

Assignees

No one assigned

    Labels

    CLIIssues related to the Codex CLIazureIssues related to the Azure-hosted OpenAI modelsbugSomething isn't workingtool-callsIssues related to tool calling

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions