Skip to content

Commit bc0a9a3

Browse files
committed
bug #1982 [Platform][Codex] Align model catalog with official docs (wachterjohannes)
This PR was merged into the main branch. Discussion ---------- [Platform][Codex] Align model catalog with official docs | Q | A | ------------- | --- | Bug fix? | yes | New feature? | no | Docs? | no | Issues | - | License | MIT The Codex `ModelCatalog` listed several models that the Codex CLI no longer accepts with a ChatGPT account — calling them returns: ``` The 'gpt-5-codex' model is not supported when using Codex with a ChatGPT account. ``` This surfaced while trying to run the bundled `examples/codex/*.php` scripts, all four of which hardcoded `gpt-5-codex` and therefore failed end-to-end. Aligning the catalog with the official list at https://developers.openai.com/codex/models: - Keep: `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.3-codex`, `gpt-5.3-codex-spark` - Add: `gpt-5.2` - Remove: `gpt-5.2-codex`, `gpt-5.1-codex`, `gpt-5-codex`, `gpt-5-codex-mini` Also: - Adds a ``@see` https://developers.openai.com/codex/models` link to the `ModelCatalog` PHPDoc header so the source of truth is easy to find. - Switches the four examples from `gpt-5-codex` to `gpt-5.4` (the currently recommended default). All four now run successfully (verified against a local Codex CLI 0.122.0 install). - Updates the `ModelCatalogTest` data provider to match. Commits ------- 5194826 [Platform][Codex] Align model catalog with official docs
2 parents fc90887 + 5194826 commit bc0a9a3

7 files changed

Lines changed: 15 additions & 21 deletions

File tree

examples/codex/chat.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
$messages = new MessageBag(
2525
Message::ofUser('Explain the architecture of this project in 3 sentences.'),
2626
);
27-
$result = $platform->invoke('gpt-5-codex', $messages, [
27+
$result = $platform->invoke('gpt-5.4', $messages, [
2828
'sandbox' => 'read-only',
2929
]);
3030

examples/codex/code-generation.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
$messages = new MessageBag(
3131
Message::ofUser('Create a file called hello.php that prints "Hello, World!" to the console.'),
3232
);
33-
$result = $platform->invoke('gpt-5-codex', $messages, [
33+
$result = $platform->invoke('gpt-5.4', $messages, [
3434
'sandbox' => 'workspace-write',
3535
]);
3636

examples/codex/stream.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
$messages = new MessageBag(
2525
Message::ofUser('What is Symfony? Explain in 3 sentences.'),
2626
);
27-
$result = $platform->invoke('gpt-5-codex', $messages, [
27+
$result = $platform->invoke('gpt-5.4', $messages, [
2828
'stream' => true,
2929
'sandbox' => 'read-only',
3030
]);

examples/codex/token-metadata.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
$messages = new MessageBag(
2525
Message::ofUser('What testing framework does this project use? Answer in one sentence.'),
2626
);
27-
$result = $platform->invoke('gpt-5-codex', $messages, [
27+
$result = $platform->invoke('gpt-5.4', $messages, [
2828
'sandbox' => 'read-only',
2929
]);
3030

src/platform/src/Bridge/Codex/CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
CHANGELOG
22
=========
33

4+
0.9
5+
---
6+
7+
* [BC BREAK] Align `ModelCatalog` with the official OpenAI Codex models list (https://developers.openai.com/codex/models): add `gpt-5.2` and remove `gpt-5.2-codex`, `gpt-5.1-codex`, `gpt-5-codex`, `gpt-5-codex-mini`
8+
49
0.8
510
---
611

src/platform/src/Bridge/Codex/ModelCatalog.php

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@
1515
use Symfony\AI\Platform\ModelCatalog\AbstractModelCatalog;
1616

1717
/**
18+
* Default model catalog for the Codex CLI bridge.
19+
*
20+
* @see https://developers.openai.com/codex/models
21+
*
1822
* @author Johannes Wachter <johannes@sulu.io>
1923
*/
2024
final class ModelCatalog extends AbstractModelCatalog
@@ -48,19 +52,7 @@ public function __construct(array $additionalModels = [])
4852
'class' => Codex::class,
4953
'capabilities' => $capabilities,
5054
],
51-
'gpt-5.2-codex' => [
52-
'class' => Codex::class,
53-
'capabilities' => $capabilities,
54-
],
55-
'gpt-5.1-codex' => [
56-
'class' => Codex::class,
57-
'capabilities' => $capabilities,
58-
],
59-
'gpt-5-codex' => [
60-
'class' => Codex::class,
61-
'capabilities' => $capabilities,
62-
],
63-
'gpt-5-codex-mini' => [
55+
'gpt-5.2' => [
6456
'class' => Codex::class,
6557
'capabilities' => $capabilities,
6658
],

src/platform/src/Bridge/Codex/Tests/ModelCatalogTest.php

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,7 @@ public static function modelsProvider(): iterable
3030
yield 'gpt-5.4-mini' => ['gpt-5.4-mini', Codex::class, $capabilities];
3131
yield 'gpt-5.3-codex' => ['gpt-5.3-codex', Codex::class, $capabilities];
3232
yield 'gpt-5.3-codex-spark' => ['gpt-5.3-codex-spark', Codex::class, $capabilities];
33-
yield 'gpt-5.2-codex' => ['gpt-5.2-codex', Codex::class, $capabilities];
34-
yield 'gpt-5.1-codex' => ['gpt-5.1-codex', Codex::class, $capabilities];
35-
yield 'gpt-5-codex' => ['gpt-5-codex', Codex::class, $capabilities];
36-
yield 'gpt-5-codex-mini' => ['gpt-5-codex-mini', Codex::class, $capabilities];
33+
yield 'gpt-5.2' => ['gpt-5.2', Codex::class, $capabilities];
3734
}
3835

3936
protected function createModelCatalog(): ModelCatalogInterface

0 commit comments

Comments
 (0)