Skip to content

Update codex to 0.122.0 - #104

Merged
slapoguzov merged 6 commits into
mainfrom
codex-update/0.122.0
Apr 22, 2026
Merged

Update codex to 0.122.0#104
slapoguzov merged 6 commits into
mainfrom
codex-update/0.122.0

Conversation

@codex-acp-ci-app

Copy link
Copy Markdown

What's new

Previously failing checks and reasons:

  • src/__tests__/CodexACPAgent/mcp-session.test.ts (should return configured mcp) failed with Read-only file system (os error 30) while creating a real thread/session.
  • src/__tests__/CodexACPAgent/CodexAcpClient.test.ts rate-limit scenarios failed type checks because RateLimitSnapshot.rateLimitReachedType became required after the update.
  • src/CodexEventHandler.ts failed type checks due to outdated/missing notification coverage (thread/realtime/transcriptUpdated no longer valid, new variants not explicitly handled, and non-exhaustive switch).

What I changed and why:

  • Updated session start/resume/load in src/CodexAcpClient.ts to send initial agent mode approvalPolicy and sandbox instead of null, aligning behavior with updated Codex defaults.
  • Updated src/CodexEventHandler.ts notification handling to:
    • replace old realtime transcript method with thread/realtime/transcript/delta and thread/realtime/transcript/done,
    • explicitly handle new notification variants (externalAgentConfig/import/completed, warning),
    • keep switch handling exhaustive with explicit cases.
  • Updated rate-limit test fixtures in src/__tests__/CodexACPAgent/CodexAcpClient.test.ts to include rateLimitReachedType: null, matching the new generated type contract.
  • Reworked src/__tests__/CodexACPAgent/mcp-session.test.ts to a mocked fixture-based behavioral test for /mcp, so it verifies MCP session output deterministically without depending on host filesystem constraints.

// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { JsonValue } from "../serde_json/JsonValue";

export type McpServerToolCallResponse = { content: Array<JsonValue>, structuredContent?: JsonValue, isError?: boolean, _meta?: JsonValue, };

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@NikolaiSviridov do we need to handle this event?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no, because McpServerToolCallResponse is a request/response type, not a ServerNotification event, and it would only matter if we started calling mcpServer/tool/call directly ourselves, for example from a custom button or action

// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { JsonValue } from "../serde_json/JsonValue";

export type ThreadInjectItemsParams = { threadId: string,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@NikolaiSviridov what does this event mean? How is it used?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ThreadInjectItemsParams is not an event; it is the request payload for thread/inject_items, used to append raw response items into an existing thread’s model-visible history

here is an example:
https://github.com/openai/codex/blob/main/codex-rs/app-server/README.md#example-inject-raw-history-items

Comment thread src/app-server/v2/WarningNotification.ts
Comment thread src/CodexEventHandler.ts Outdated
@slapoguzov
slapoguzov merged commit ccbff66 into main Apr 22, 2026
3 checks passed
@ishulgin
ishulgin deleted the codex-update/0.122.0 branch July 8, 2026 07:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants