core: strip image detail from Responses Lite requests - #27246
Merged
Conversation
This was referenced Jun 9, 2026
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 9, 2026 21:49
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 9, 2026 21:49
c1cd2b4 to
ce2208b
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 9, 2026 21:49
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 9, 2026 22:03
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 9, 2026 22:03
ce2208b to
6956206
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 9, 2026 22:03
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 9, 2026 23:50
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 9, 2026 23:50
6956206 to
4ab6a84
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 9, 2026 23:50
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 10, 2026 02:42
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 10, 2026 02:42
4ab6a84 to
04183f0
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 10, 2026 02:42
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 10, 2026 03:45
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 10, 2026 03:45
04183f0 to
da0224f
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 10, 2026 03:45
fjord-oai
marked this pull request as ready for review
June 10, 2026 04:13
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 10, 2026 19:37
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 10, 2026 19:37
da0224f to
7ede0c2
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 10, 2026 19:37
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 10, 2026 19:54
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 10, 2026 19:54
7ede0c2 to
377055f
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 10, 2026 19:54
fjord-oai
added a commit
that referenced
this pull request
Jun 10, 2026
## Summary Add shared image-processing primitives needed for centralized image preparation in a follow-up PR. - Add `load_data_url_for_prompt` for decoding and preparing base64 image data URLs. - Add configurable maximum-dimension and 32px patch-budget resizing. - Enforce a 1 GiB sanity limit on both encoded and decoded data-URL representations. - Preserve original PNG, JPEG, and WebP bytes when resizing is unnecessary. - Preserve the existing GIF-to-PNG behavior. - Move image utility tests into the existing sidecar test module. ## Behavior This PR is intended to be runtime behavior-preserving. Existing production callers continue using `PromptImageMode::ResizeToFit` and `PromptImageMode::Original` with their existing semantics. The new data-URL entrypoint and configurable resize mode have no production callers in this PR; they are used by the next PR in the stack. This PR does not change user-input handling, `view_image`, history insertion, request construction, HTTP image URL forwarding, or app-server behavior. #### [git stack](https://github.com/magus/git-stack-cli) - 👉 `1` #27245 - ⏳ `2` #27247 - ⏳ `3` #27246 - ⏳ `4` #27266
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 10, 2026 22:49
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 10, 2026 22:49
377055f to
1b83959
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 10, 2026 22:49
rka-oai
reviewed
Jun 11, 2026
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 11, 2026 00:37
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 11, 2026 00:37
1b83959 to
43167c8
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 11, 2026 00:37
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 11, 2026 01:16
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 11, 2026 01:16
43167c8 to
6ae7b9d
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 11, 2026 01:16
fjord-oai
changed the base branch from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 11, 2026 01:26
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 11, 2026 01:26
6ae7b9d to
39fd6a4
Compare
fjord-oai
changed the base branch from
main
to
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
June 11, 2026 01:26
fjord-oai
added a commit
that referenced
this pull request
Jun 11, 2026
## Summary Adds complete client-side image preparation behind the default-off `resize_all_images` feature flag. When enabled, local image producers defer decoding and resizing. Images are prepared centrally before insertion into conversation history, covering user input, `view_image`, and structured tool-output images. ## Behavior - Processes base64 `data:` images in messages and function/custom tool outputs. - Leaves non-data URLs, including HTTP(S) URLs, unchanged. - Applies image-detail budgets: - `high` and omitted: 2048px maximum dimension and 2.5K 32px patches. - `original`: 6000px maximum dimension and 10K 32px patches. - `auto`: uses the same 2048px / 2.5K-patch budget as high. - `low`: unsupported and replaced with an actionable placeholder. - Preserves original image bytes when no resize or format conversion is needed. - Enforces the shared 1 GiB encoded and decoded data-URL sanity limits. - Replaces only an image that fails preparation, preserving sibling content and tool-output metadata. - Uses bounded placeholders distinguishing generic processing failures, oversized images, and unsupported `low` detail. - Prepares resumed and forked history before installing it as live history without modifying persisted rollouts. ## Flag-Off Behavior When `resize_all_images` is disabled: - Existing local user-input and `view_image` processing remains unchanged. - Existing decoding and error behavior remains unchanged. - Arbitrary tool-output images are not processed. - HTTP(S) image URLs continue to be forwarded unchanged. #### [git stack](https://github.com/magus/git-stack-cli) - ✅ `1` #27245 - 👉 `2` #27247 - ⏳ `3` #27246 - ⏳ `4` #27266
Base automatically changed from
fjord/responses_strict_mode_v2---4ixxk-7dlcgvwy
to
main
June 11, 2026 02:21
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 11, 2026 02:21
39fd6a4 to
3a6d4bd
Compare
rka-oai
approved these changes
Jun 11, 2026
rka-oai
left a comment
Contributor
There was a problem hiding this comment.
LGTM (just one test nit)
pakrym-oai
reviewed
Jun 11, 2026
pakrym-oai
reviewed
Jun 11, 2026
pakrym-oai
approved these changes
Jun 11, 2026
git-stack-id: fjord/responses_strict_mode_v2---4ixxk-hc0zkmy- git-stack-title: core: strip image detail from Responses Lite requests
fjord-oai
force-pushed
the
fjord/responses_strict_mode_v2---4ixxk-hc0zkmy-
branch
from
June 11, 2026 03:29
3a6d4bd to
5eb40cb
Compare
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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
detailfields from every Responses Lite request.detailfields for non-Responses-Lite models.Motivation
Responses Lite does not support image
detailtags, so Codex must omit them whenevermodel_info.use_responses_liteis enabled. This transport requirement is independent of theresize_all_imagesfeature.Stored history retains the original detail values. This keeps request-specific formatting isolated from conversation state and preserves the information for local image preparation and non-Responses-Lite requests.
git stack
1image: add shared data URL preparation utilities #272452core: resize all history images behind a feature flag #272473core: strip image detail from Responses Lite requests #272464image: preserve metadata when resizing prompt images #27266