Consistently error "No tool call found for function call output with call_id"

Open 💬 2 comments Opened Apr 13, 2026 by JounQin
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of Codex CLI is running?

codex-cli 0.120.0

What subscription do you have?

Pro

Which model were you using?

gpt-5.3-codex

What platform is your computer?

Darwin 25.4.0 arm64 arm

What terminal emulator and version are you using (if applicable)?

VSCode

What issue are you seeing?

{"type":"error","status":400,"error":{
    "message": "No tool call found for function call output with call_id call_Sp2iWQ8IWnaN7pmtKRxmn2ky.",
    "type": "invalid_request_error",
    "param": "input",
    "code": null
  }}

What steps can reproduce the bug?

Uploaded thread: 019d8665-5784-7022-9945-c5da8210ab09

What is the expected behavior?

I just send a simple task request, so no error is expected.

Additional information

_No response_

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 4 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #16255
  • #17161

Powered by Codex Action

raye-deng · 4 months ago

This tool call mismatch error is a serious reliability issue for AI coding tools. The system generates a function call with a call_id, but when it tries to provide the result, the backend can't find that call.

What's concerning is this happens consistently on simple tasks — it's not an edge case, it's a fundamental tool orchestration bug. When AI tools fail this way:

  • Users can't complete basic workflows
  • Trust in the tool degrades rapidly
  • No clear error recovery path

We've seen similar integration contract failures in AI-generated code: the AI calls an API with parameters that look correct but don't match the actual API contract, or it assumes a response format that the service doesn't provide.

This is why runtime validation of tool/API calls is essential. Static analysis can't catch contract mismatches that only appear at runtime — you need to validate that the call_id exists, that the parameters match the schema, and that the response can be parsed.

npx @opencodereview/cli scan . --sla L1