diff --git a/packages/client/src/shared/providers.ts b/packages/client/src/shared/providers.ts index 3b9ae29..77bf2da 100644 --- a/packages/client/src/shared/providers.ts +++ b/packages/client/src/shared/providers.ts @@ -225,7 +225,7 @@ export const PROVIDER_PRESETS: ProviderPreset[] = [ label: 'OpenAI Codex', value: 'openai-codex', base_url: 'https://chatgpt.com/backend-api/codex', - models: ['gpt-5.4-mini', 'gpt-5.4', 'gpt-5.3-codex', 'gpt-5.2-codex', 'gpt-5.1-codex-max', 'gpt-5.1-codex-mini'], + models: ['gpt-5.5', 'gpt-5.4-mini', 'gpt-5.4', 'gpt-5.3-codex', 'gpt-5.2-codex', 'gpt-5.1-codex-max', 'gpt-5.1-codex-mini'], }, { label: 'Arcee AI', diff --git a/packages/server/src/shared/providers.ts b/packages/server/src/shared/providers.ts index 26fd421..e421cb1 100644 --- a/packages/server/src/shared/providers.ts +++ b/packages/server/src/shared/providers.ts @@ -240,7 +240,7 @@ export const PROVIDER_PRESETS: ProviderPreset[] = [ value: 'openai-codex', builtin: true, base_url: 'https://chatgpt.com/backend-api/codex', - models: ['gpt-5.4-mini', 'gpt-5.4', 'gpt-5.3-codex', 'gpt-5.2-codex', 'gpt-5.1-codex-max', 'gpt-5.1-codex-mini'], + models: ['gpt-5.5', 'gpt-5.4-mini', 'gpt-5.4', 'gpt-5.3-codex', 'gpt-5.2-codex', 'gpt-5.1-codex-max', 'gpt-5.1-codex-mini'], }, { label: 'Arcee AI', diff --git a/tests/shared/provider-presets.test.ts b/tests/shared/provider-presets.test.ts new file mode 100644 index 0000000..5b3a290 --- /dev/null +++ b/tests/shared/provider-presets.test.ts @@ -0,0 +1,31 @@ +import { describe, expect, it } from 'vitest' + +import { + PROVIDER_PRESETS as SERVER_PROVIDER_PRESETS, + buildProviderModelMap as buildServerProviderModelMap, +} from '../../packages/server/src/shared/providers' +import { + PROVIDER_PRESETS as CLIENT_PROVIDER_PRESETS, + buildProviderModelMap as buildClientProviderModelMap, +} from '../../packages/client/src/shared/providers' + +const OPENAI_CODEX_PROVIDER = 'openai-codex' +const GPT_5_5_MODEL = 'gpt-5.5' + +function modelsForProvider(providerPresets: Array<{ value: string; models: string[] }>, provider: string): string[] { + const preset = providerPresets.find((candidate) => candidate.value === provider) + expect(preset).toBeDefined() + return preset?.models ?? [] +} + +describe('provider presets', () => { + it('lists GPT-5.5 for OpenAI Codex on both client and server', () => { + expect(modelsForProvider(CLIENT_PROVIDER_PRESETS, OPENAI_CODEX_PROVIDER)).toContain(GPT_5_5_MODEL) + expect(modelsForProvider(SERVER_PROVIDER_PRESETS, OPENAI_CODEX_PROVIDER)).toContain(GPT_5_5_MODEL) + }) + + it('exposes GPT-5.5 through provider model maps', () => { + expect(buildClientProviderModelMap()[OPENAI_CODEX_PROVIDER]).toContain(GPT_5_5_MODEL) + expect(buildServerProviderModelMap()[OPENAI_CODEX_PROVIDER]).toContain(GPT_5_5_MODEL) + }) +})