Skip to content

fix(llm, openai, openrouter, llamacpp): Decode tool call argument nulls - #1164

Open
JeanMertz wants to merge 2 commits into
mainfrom
bookworm-tool-def
Open

fix(llm, openai, openrouter, llamacpp): Decode tool call argument nulls#1164
JeanMertz wants to merge 2 commits into
mainfrom
bookworm-tool-def

Conversation

@JeanMertz

Copy link
Copy Markdown
Collaborator

Optional tool arguments encoded as null by strict providers reach tools as omitted fields. This lets Bookworm apply its defaults rather than rejecting kinds: null. Explicit values, source-accepted nulls, and required arguments retain their meaning.

Pair schema conversion with request-local decoding plans, consumed when streamed arguments become a complete tool call. Cover OpenAI's streaming and non-streaming paths, OpenRouter, and llama.cpp without changing MCP transport or persisted event types.

Keep reference resolution and schema composition behavior unchanged. Decoding through references and general unions remains deferred to T-0h28vbn; shared dispatch validation remains tracked by T-063sw1z.

Optional tool arguments encoded as null by strict providers reach tools
as omitted fields. This lets Bookworm apply its defaults rather than
rejecting `kinds: null`. Explicit values, source-accepted nulls, and
required arguments retain their meaning.

Pair schema conversion with request-local decoding plans, consumed when
streamed arguments become a complete tool call. Cover OpenAI's streaming
and non-streaming paths, OpenRouter, and llama.cpp without changing MCP
transport or persisted event types.

Keep reference resolution and schema composition behavior unchanged.
Decoding through references and general unions remains deferred to
T-0h28vbn; shared dispatch validation remains tracked by T-063sw1z.

Signed-off-by: Jean Mertz <git@jeanmertz.com>
Signed-off-by: Jean Mertz <git@jeanmertz.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant