fix(openai): handle null reasoning effort in Responses API#7469
Merged
jamadeo merged 1 commit intoblock:mainfrom Feb 28, 2026
Merged
fix(openai): handle null reasoning effort in Responses API#7469jamadeo merged 1 commit intoblock:mainfrom
jamadeo merged 1 commit intoblock:mainfrom
Conversation
jamadeo
approved these changes
Feb 26, 2026
Non-reasoning models like gpt-4o return `"effort": null` in the reasoning field of Responses API events. The ResponseReasoningInfo struct expected a String, causing deserialization to fail with: "invalid type: null, expected a string" Make the field Optional to handle both reasoning models (which return a string like "medium") and non-reasoning models (which return null). Change-Id: Ic80564bf44df1a8294498c5c3a8e1f853a1275c3 Signed-off-by: rabi <[email protected]>
lifeizhou-ap
added a commit
that referenced
this pull request
Mar 2, 2026
* main: (46 commits) chore(deps): bump minimatch from 10.1.1 to 10.2.3 in /evals/open-model-gym/suite (#7498) chore(deps): bump swiper from 11.2.10 to 12.1.2 in /documentation (#7368) Better network failure error & antrhopic retry (#7595) feat: make the text bar persistent and add a queue for messages (#7560) fix: outdated clippy command in goosehints (#7590) chore(deps): bump hono from 4.11.7 to 4.12.1 in /evals/open-model-gym/mcp-harness (#7417) chore(deps-dev): bump ajv from 6.12.6 to 6.14.0 in /ui/desktop (#7437) chore(deps): bump ajv from 8.17.1 to 8.18.0 in /evals/open-model-gym/mcp-harness (#7491) chore(deps): bump hono from 4.12.0 to 4.12.2 in /ui/desktop (#7515) chore(deps-dev): bump rollup from 4.57.1 to 4.59.0 in /ui/desktop (#7522) chore(deps): bump minimatch in /ui/desktop (#7572) fix: validate configure probe for streaming providers (#7564) Dockerfile: add missing build/runtime dependencies (#7546) fix(claude-code): Permission routing for smart-approve (#7501) Add base_path field to custom provider config (#7558) fix(cli): avoid debug logging by default in CLI (#7569) fix: panic on corrupted permission.yaml instead of silently allowing all (#7432) (#7458) fix(openai): handle null reasoning effort in Responses API (#7469) Allow GOOSE_NODE_DIR override in batch file (#7422) feat: add analyze platform extension with tree-sitter AST parsing (#7542) ...
craigwalkeruk
pushed a commit
to craigwalkeruk/custom-goose
that referenced
this pull request
Mar 5, 2026
Signed-off-by: rabi <[email protected]>
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
Non-reasoning models like gpt-4o return
"effort": nullin the reasoning field of Responses API events. The ResponseReasoningInfo struct expected a String, causing deserialization to fail with:invalid type: null, expected a stringMake the field Optional to handle both reasoning models (which return a string like "medium") and non-reasoning models (which return null).
Type of Change
Testing
Tested locally.