Support GPT-5.6 tool calls in Daisen - #464
Merged
Merged
Conversation
syifan
marked this pull request as ready for review
August 5, 2026 02:05
syifan
enabled auto-merge (squash)
August 5, 2026 02:05
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
reasoning_effort: "none"on GPT-5.6 Chat Completions turns that offer function toolsgpt-5.6-solthe OpenAI preset and new-configuration default while preserving saved user selectionsRoot cause
OpenAI's
/v1/chat/completionsendpoint returns HTTP 400 when GPT-5.6 function tools are combined with the model's default reasoning effort:Daisen then exercised its capability fallback and retried without tools, which made GPT-5.6 appear to answer normally while never invoking a tool. GPT-5.5 did not reject the original request.
Daisen currently standardizes on the OpenAI-compatible Chat Completions protocol, so this PR applies the endpoint-recommended
reasoning_effort: "none"setting only to GPT-5.6 tool turns. Supporting GPT-5.6 reasoning and tools together would require a future Responses API provider implementation.The no-tools capability fallback remains for OpenAI-compatible gateways, but it is no longer silent: the chat now reports the rejected tool request and provider error before retrying.
Validation
go test ./daisen2/...npm testindaisen2/static— 55 passednpm run buildindaisen2/staticreasoning_effort: "none"data_querycall and returned synthetic value 42data_querycall and returned synthetic value 43gpt-5.6-solin the OpenAI settings panelFixes #463