I have a test case for a problem I am finding with the OAI compatibility layer. Minimal-ish case gist here. It is based on the sample code here. The code is set up to easily swap in another endpoint for sxs comparison with working endpoints.
I also capture the request/responses here.
The outgoing request sending the tool response is well formed. The final response is:
INCOMING RESPONSE: 400
Response body: [
{
"error": {
"code": 400,
"message": "Request contains an invalid argument.",
"status": "INVALID_ARGUMENT"
}
}
]
There are no parallel tool calls at play, this is about as simple an exchange as it gets.