From bb6744354e319b0995c4301009005ff115f1a68f Mon Sep 17 00:00:00 2001 From: Aleksandr Slapoguzov Date: Mon, 9 Feb 2026 15:17:14 +0100 Subject: [PATCH] LLM-24415 remove models filtering and update codex to 0.98.0 to make gpt-5.3-codex available --- package-lock.json | 8 ++++---- package.json | 2 +- src/CodexAcpServer.ts | 8 -------- src/__tests__/CodexACPAgent/data/model-filtering.json | 10 ++++++++++ src/__tests__/CodexACPAgent/model-filtering.test.ts | 4 ++-- 5 files changed, 17 insertions(+), 15 deletions(-) diff --git a/package-lock.json b/package-lock.json index 217a6579..bb89803a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "vscode-jsonrpc": "^8.2.1" }, "devDependencies": { - "@openai/codex": "^0.97.0", + "@openai/codex": "^0.98.0", "@types/node": "^24.10.1", "mcp-hello-world": "^1.1.2", "tsx": "^4.20.6", @@ -813,9 +813,9 @@ } }, "node_modules/@openai/codex": { - "version": "0.97.0", - "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.97.0.tgz", - "integrity": "sha512-3bG0SFuC5nEQd5CZuIj4qV/6QyAb9mpQPKJKYNAo7NptFNifCI+hcP4a+/zjy+hNndvnvuylkCoj+BWDXq+cIA==", + "version": "0.98.0", + "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.98.0.tgz", + "integrity": "sha512-CKjrhAmzTvWn7Vbsi27iZRKBAJw9a7ZTTkWQDbLgQZP1weGbDIBk1r6wiLEp1ZmDO7w0fHPLYgnVspiOrYgcxg==", "dev": true, "license": "Apache-2.0", "bin": { diff --git a/package.json b/package.json index 43ed136d..7e108d11 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "license": "ISC", "type": "module", "devDependencies": { - "@openai/codex": "^0.97.0", + "@openai/codex": "^0.98.0", "@types/node": "^24.10.1", "mcp-hello-world": "^1.1.2", "tsx": "^4.20.6", diff --git a/src/CodexAcpServer.ts b/src/CodexAcpServer.ts index e92544e1..a0145e61 100644 --- a/src/CodexAcpServer.ts +++ b/src/CodexAcpServer.ts @@ -18,13 +18,6 @@ import {CodexCommands} from "./CodexCommands"; import type {QuotaMeta} from "./QuotaMeta"; import {logger} from "./Logger"; -const ALLOWED_MODEL_IDS = new Set([ - "gpt-5.2", - "gpt-5.2-codex", - "gpt-5.1-codex-max", - "gpt-5.1-codex-mini", -]); - export interface SessionState { sessionId: string, currentModelId: string, @@ -254,7 +247,6 @@ export class CodexAcpServer implements acp.Agent { private createModelState(availableModels: Model[], selectedModelId: string): SessionModelState { const allowedModels = availableModels - .filter((model) => ALLOWED_MODEL_IDS.has(model.id)) .flatMap((model) => model.supportedReasoningEfforts.map((effort) => ({ modelId: ModelId.fromComponents(model, effort.reasoningEffort).toString(), diff --git a/src/__tests__/CodexACPAgent/data/model-filtering.json b/src/__tests__/CodexACPAgent/data/model-filtering.json index a650f1fd..95439da2 100644 --- a/src/__tests__/CodexACPAgent/data/model-filtering.json +++ b/src/__tests__/CodexACPAgent/data/model-filtering.json @@ -9,9 +9,19 @@ "name": "GPT-5.2 (low)", "description": "Allowed by id. Fast effort." }, + { + "modelId": "other-id[medium]", + "name": "gpt-5.2 (medium)", + "description": "Allowed Default effort." + }, { "modelId": "gpt-5.1-codex-mini[medium]", "name": "Other (medium)", "description": "Allowed by id. Default effort." + }, + { + "modelId": "gpt-4o[medium]", + "name": "gpt-4o (medium)", + "description": "Allowed. Default effort." } ] \ No newline at end of file diff --git a/src/__tests__/CodexACPAgent/model-filtering.test.ts b/src/__tests__/CodexACPAgent/model-filtering.test.ts index e22ba394..c7aa22b0 100644 --- a/src/__tests__/CodexACPAgent/model-filtering.test.ts +++ b/src/__tests__/CodexACPAgent/model-filtering.test.ts @@ -29,7 +29,7 @@ describe("Model filtering", () => { id: "other-id", model: "gpt-5.2", displayName: "gpt-5.2", - description: "Looks allowed but id is not.", + description: "Allowed", supportedReasoningEfforts: [defaultEffort], defaultReasoningEffort: "medium", supportsPersonality: false, @@ -53,7 +53,7 @@ describe("Model filtering", () => { id: "gpt-4o", model: "gpt-4o", displayName: "gpt-4o", - description: "Not allowed.", + description: "Allowed.", supportedReasoningEfforts: [defaultEffort], defaultReasoningEffort: "medium", supportsPersonality: false,