Repository navigation
Conversation
1664f0b to
e52e31c
Compare
e0ceb99 to
2b2dbd2
Compare
|
Related: my PR #15132 makes the live Codex account catalog authoritative for the dashboard and So there is some overlap with the model-picker part of this PR, but this is not a duplicate overall: the pricing, Fast-tier, reasoning handling, and GitHub Copilot changes here are outside #15132's scope. It would be good to keep those additions compatible with the live catalog, particularly so the new effort aliases do not reappear as separate selectable models after synchronization. The companion PR #15133 separately selects accounts using their own synced model inventories, so availability on one account does not imply availability on every account. Both PRs target |
2b2dbd2 to
faf2584
Compare
OpenAI published gpt-6.1-sol and the live Codex catalog already serves it, but the built-in OpenAI/Codex tables on release/v3.8.52 do not. GitHub Copilot's static catalog stops at gpt-5.6, and the executor only sends names containing "codex" to /responses, so gpt-6-astra and gpt-6.1-sol miss that endpoint. Add the base ids to OpenAI, Codex, GitHub Copilot, and GHE Copilot. Keep the public API limits (1,050,000 context / 128,000 output) apart from Codex's live maximum context (872,000). Preserve max through translation. Route gpt-6* on Copilot to /responses even when the model is not in the static list. Bill a whole gpt-6.x-sol request at the long-context rate once input is above 272,000 tokens: 2x input and cache, 1.5x output. The bare gpt-6-sol id is left alone. The reasoning premium uses the scaled output price and cannot go negative, because reasoning tokens are already inside the output count. Bump the fallback Codex client pin from 0.156.1 to 0.159.2, including the image CLI. Caller-supplied versions still win. The public API default effort stays medium; Codex's own catalog default of low is not applied as a global fallback. Related to diegosouzapw#15166 Signed-off-by: Minxi Hou <houminxi@gmail.com>
faf2584 to
0585aba
Compare
Summary
GPT-6.1 Sol is in the live Codex catalog, but the built-in OpenAI and Codex tables on
release/v3.8.52do not list it. GitHub Copilot's static catalog stops atgpt-5.6. The Copilot executor only sends model names containingcodexto/responses, sogpt-6-astraandgpt-6.1-solhit/chat/completionsand fail.This adds the base ids to OpenAI, Codex, GitHub Copilot, and GHE Copilot, and sends any
gpt-6*Copilot model to/responses.Long-context billing follows the published Sol page: once input is above 272,000 tokens, the whole request is charged at 2x input, 2x cache, and 1.5x output. The bare
gpt-6-solid is unchanged. The reasoning premium uses the scaled output price and is clamped at zero, because reasoning tokens are already counted in the output total.Public API limits stay 1,050,000 context / 128,000 output. Codex's live maximum context (872,000) is kept separate.
maxis preserved through translation.The fallback Codex client pin moves from 0.156.1 to 0.159.2, in both the header default and the image CLI (
@openai/codex). A caller-supplied version still wins. Compared with 0.156.1, 0.159.2 does not add request headers:originatorstayscodex_cli_rs, the User-Agent format string is unchanged, and the session headers remainsession-idandthread-id. The public API default effort stays medium.Review
Forge LOCAL on this change did not reach three clean rounds. The confirmed findings on the last three runs were excerpt mismatches (
<receipt-evidence>), not product defects. Product notes that were real (reasoning premium ignoring the scaled output price, then going negative) are fixed in this commit. Repeated notes about the cache rate 0.2, thegpt-6-solbare id, and\d+vsgpt-6.10were checked against the code and rejected. The client-pin bump landed after that review; it is a version string plus the tests and snapshot that lock to it.Test plan
tests/unit/codex-gpt6-sol-luna.test.ts— catalog ids, effort suffix, long-context boundary at 271,999 / 272,000 / 272,001tests/unit/reasoning-cost-double-billing.test.tstests/unit/8951-github-gpt56-responses.test.ts—gpt-6-astraandgpt-6.1-solresolve to/responsestests/unit/claude-codex-identity-version-sync.test.ts,client-identity-profiles,codex-client-headers,executor-codex— pin matches the DockerfileRelated to #15166