Skip to content

fix(images): preserve Sol reference images - #17184

Merged
diegosouzapw merged 20 commits into
cheaper-inference:release/v3.8.53from
KiaroSama:fix/codex-sol-image-reference
Nov 3, 2026
Merged

diegosouzapw merged 20 commits into
cheaper-inference:release/v3.8.53from
KiaroSama:fix/codex-sol-image-reference

Conversation

@KiaroSama

@KiaroSama KiaroSama commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Admit the existing Sol Codex route through the image catalog as gpt-6.1-sol-image and preserve original reference bytes for its edits. Reject supplied masks, including empty/null fields, on direct and combo edits. Preserve legacy normalization, dedicated Images endpoints, input limits, policy/account admission and paid-plan checks.

Current source

  • Head: b8ec2f1d4f2fa9e34acd2c0cc15623065ea3d0d2; published maintainer advancement adopted locally by fast-forward, exact local/fork/live head verified OPEN.
  • Target: release/v3.8.53; maintainer normal merge includes official da1e6c79fb51bf4615e4f1db03a49cc8a09196fb and the landed mutation-test registration repair. No new source commit, push or history rewrite was needed.
  • This merge changes none of the Sol image implementation or its three focused reference/registry/catalog test seams. The contribution remains 11 paths relative to that official base, including its changelog fragment.
  • Landed upstream repairs include fix(release): clear the remaining release/v3.8.53 base-reds — namespaced combo lookup, curated imported rows, build-scope ceiling #18516 (cached combo getter, curated imported-model filtering/assertion and documented build-scope growth). No feature-local assertion or gate waiver was added.
  • Inherited base-red tracking: 🔴 Release branch not green: release/v3.8.53 #17219.

Evidence

Current focused public route regression passed 1/1, zero failures/skips, 38188.7704 ms including imports. It uses an isolated fake upstream, verifies original reference bytes and mask refusal, and makes no paid/live provider call. The normal release merge had no conflicts; its only image-handler adjustment adopts upstream's existing saveCallLog re-export instead of the application-layer import. Reference encoding and request admission remain unchanged.

node --import tsx/esm --test --test-concurrency=1 --test-timeout=15000 --test-reporter=spec tests/unit/codex-sol-original-reference.test.ts
tests 1
pass 1
fail 0
cancelled 0
skipped 0
duration_ms 38188.7704

This focused check is not full current-head CI or real upstream acceptance. The command completed after the tool moved it to background at30s; stop found it already completed. No complete independent OS survivor sweep is claimed.

Native commit hooks passed documentation/version/mirror synchronization, gate manifest, explicit-any, tracked-artifact, identity and attribution checks. Lint-staged reported no staged files for this merge; that is not a fresh focused lint run. The optional private UI-kit snapshot check skipped because its reference clone is absent. git diff --check reports eight incoming CRLF whitespace warnings in syntxDiscovery.ts; that file is byte-identical to the official base and was not modified by this contribution.

Historical focused manual verification passed 19/19 tests in six files on source a90dd8367cf8cd64db33d8f5d6855c0097be5a76, scoped lint/format and the unchanged engine-to-app import ceiling. The baseline and candidate shared 19 TypeScript diagnostics, not a zero-error typecheck. Later synthetic reference/catalog checks reported 9/9 passes on their original source. These results do not establish acceptance of the current head.

Current hosted acceptance — checked 2026-11-03

CI run41523099102 and Quality run41523099273 both completed SUCCESS, with API head_sha equal to b8ec2f1d4f2fa9e34acd2c0cc15623065ea3d0d2. CI tested synthetic merge candidate 15993d5f485f53559a64da883291f1fdb76a24dc; its parents are official base da1e6c79fb51bf4615e4f1db03a49cc8a09196fb and this exact PR head. The admission receipt reports PASS and an empty errors array.

All eight unit shards, Vitest, Build, Coverage, Quality Ratchet, Gate / CI and Gate / Quality passed. Current Vitest reports588core tests and4104UI tests passed with1UI skip. General integration/E2E and package-artifact jobs were classified not applicable and skipped; their success is not claimed. Earlier cancelled runs and their failing aggregate gates are superseded by these successful same-head runs, not silently treated as passing.

This closes the applicable hosted CI/Quality acceptance for that candidate. It does not prove live Codex reference acceptance, authenticated-server/browser behavior or signed package/platform acceptance. No duplicate suite/build, new source commit or paid request was made for this evidence update.

Tests

codex-sol-original-reference.test.ts, image-registry-gpt56.test.ts and specialty-model-catalog-routes.test.ts. The public regression checks original bytes, aliases, exactly one synthetic submission and mask rejection.

Open merge prerequisites

The maintainer's requested live Codex acceptance of a >400 KB / >1024 px reference remains unproven. The previously authorized single synthetic 1200 x 1200 PNG attempt (2,992,074 bytes) has a durable outcome_unknown receipt, no stored outputs and possible processing/billing. Its gateway was not proven to run this candidate. It establishes neither acceptance nor rejection and has not been resubmitted.

Overlap with #16731 remains the maintainer's merge-order decision. No installation, gateway restart, operator database change, deployment, new paid inference, upstream merge or change to another session was performed. This is a focused resubmission of the Sol portion of #15524; the closed contribution is not reopened.

@KiaroSama
KiaroSama marked this pull request as ready for review October 19, 2026 17:33
@diegosouzapw

Copy link
Copy Markdown
Collaborator

Thanks @KiaroSama - this is a nicely focused resubmission and the tests pass on the merged tip (73/73 across the Sol, catalog and image-edit suites). Before merge we need: (1) a changelog fragment (changelog.d/fixes or features, named 17184-...), (2) a live check against Codex showing a Sol edit with a >400 KB / >1024 px reference is accepted - the legacy path shrinks references because the backend returned 503, and the tests use a fake upstream, so we cannot prove the upstream behaves otherwise, and (3) heads-up that #16731 also edits images/edits/route.ts and will conflict with the readEditInput extraction - we will pick the merge order and the second PR will need a rebase. Also please update from release/v3.8.53 so CI runs on the current tip.

@KiaroSama

Copy link
Copy Markdown
Contributor Author

Updated in 2d61ead: added changelog.d/fixes/17184-codex-sol-image-reference.md and merged release/v3.8.53 at 0520f9e without conflicts. Native commit gates passed; no fresh runtime acceptance is claimed. The requested live Codex check with a >400 KB / >1024 px reference remains unperformed: the operator has explicitly held live-provider calls and installed-gateway changes, and mock tests cannot establish backend acceptance. Please keep that as an open merge prerequisite until an authorized live result is available. Acknowledged the overlap with #16731; leaving merge order to you and making no history rewrite.

@KiaroSama

Copy link
Copy Markdown
Contributor Author

Live-check update: with operator approval, submitted one Sol edit through the configured gateway using a synthetic nonprivate 1200 x 1200 PNG (2,992,074 bytes). The input copy SHA-256 matched the original. After about 60 seconds the tool stopped waiting; reconciliation of the same durable request receipt reports outcome_unknown, no stored outputs, and possible upstream processing/billing. No resubmission or model/provider fallback was made. This is NOT evidence of backend acceptance or rejection, and the exact PR candidate is not proven deployed by this gateway. The requested live acceptance remains open; please do not treat this attempt as a passing check.

@diegosouzapw diegosouzapw added deferred-v3.8.54 Feat PRs held for v3.8.54. Keep open. Do not merge into v3.8.53. and removed deferred-v3.8.54 Feat PRs held for v3.8.54. Keep open. Do not merge into v3.8.53. labels Nov 3, 2026
Resolve the Codex image catalog conflict with cheaper-inference#18826 (gpt-6.1-sol already registered on the release): keep the PR's CODEX_IMAGE_PROVIDER module, adopt the release ordering (gpt-6.1-sol first) and its routing comment, and drop the duplicated catalog entries in the tests.
@coderabbitai

coderabbitai Bot commented Nov 3, 2026

Copy link
Copy Markdown

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters: 10
  • changelog.d/fixes/17184-codex-sol-image-reference.md is excluded by none and included by none
  • open-sse/config/imageRegistryData.ts is excluded by none and included by none
  • open-sse/config/providers/registry/codex/imageModels.ts is excluded by none and included by none
  • open-sse/handlers/imageGeneration.ts is excluded by none and included by none
  • open-sse/handlers/imageGeneration/providers/codexReferences.ts is excluded by none and included by none
  • src/app/api/v1/images/edits/editInput.ts is excluded by none and included by none
  • src/app/api/v1/images/edits/route.ts is excluded by none and included by none
  • tests/unit/codex-sol-original-reference.test.ts is excluded by none and included by none
  • tests/unit/image-registry-gpt56.test.ts is excluded by none and included by none
  • tests/unit/specialty-model-catalog-routes.test.ts is excluded by none and included by none

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

Run configuration

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

CodeRabbit Verify

  • Run CodeRabbit Verify to test the changes in this pull request.

@diegosouzapw
diegosouzapw merged commit 5a7292d into cheaper-inference:release/v3.8.53 Nov 3, 2026
3 of 37 checks passed
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.

2 participants