From 3052bbcf8c9d48e130599308c583784db43e57aa Mon Sep 17 00:00:00 2001 From: Owen Lin Date: Fri, 11 Sep 2026 21:17:40 +0000 Subject: [PATCH] Remove the deprecated `thread/rollback` API (#44915) ## What changed Remove `thread/rollback`, its request and response types, generated bindings, and the core `Op::ThreadRollback` operation. Requests now follow the generic unknown-method rejection path. Document `thread/revert` as the alternative for paginated threads. Keep historical `ThreadRolledBack` markers and legacy error deserialization so existing rollouts remain compatible with replay and migration. ## Testing Adapt retained-context and Guardian history tests to append legacy rollback markers and resume threads, preserving coverage of surviving instructions, answers, and review history. GitOrigin-RevId: b3da1becdf86b1869275aacb0ffc2817cee5af2e --- .../schema/json/ClientRequest.json | 43 - .../schema/json/ServerNotification.json | 2 +- .../codex_app_server_protocol.schemas.json | 65 +- .../codex_app_server_protocol.v2.schemas.json | 65 +- .../schema/json/v2/ThreadForkResponse.json | 2 +- .../schema/json/v2/ThreadListResponse.json | 2 +- .../json/v2/ThreadMetadataUpdateResponse.json | 2 +- .../schema/json/v2/ThreadReadResponse.json | 2 +- .../schema/json/v2/ThreadResumeResponse.json | 2 +- .../schema/json/v2/ThreadRevertResponse.json | 2 +- .../schema/json/v2/ThreadRollbackParams.json | 21 - .../json/v2/ThreadRollbackResponse.json | 2736 ----------------- .../schema/json/v2/ThreadStartResponse.json | 2 +- .../json/v2/ThreadStartedNotification.json | 2 +- .../json/v2/ThreadUnarchiveResponse.json | 2 +- .../app-server-exports-experimental.json.zst | Bin 156708 -> 156251 bytes .../app-server-exports-stable.json.zst | Bin 150559 -> 150043 bytes .../schema/typescript/ClientRequest.ts | 3 +- .../schema/typescript/v2/Thread.ts | 2 +- .../typescript/v2/ThreadRollbackParams.ts | 15 - .../typescript/v2/ThreadRollbackResponse.ts | 14 - .../schema/typescript/v2/index.ts | 2 - .../src/protocol/common.rs | 5 - .../src/protocol/v2/thread.rs | 25 - .../src/protocol/v2/thread_data.rs | 2 +- codex-rs/app-server/README.md | 11 + .../app-server/src/bespoke_event_handling.rs | 234 +- codex-rs/app-server/src/message_processor.rs | 7 - codex-rs/app-server/src/outgoing_message.rs | 8 - codex-rs/app-server/src/request_processors.rs | 1 - .../request_processors/thread_lifecycle.rs | 6 - .../request_processors/thread_processor.rs | 98 - .../src/request_processors/turn_processor.rs | 5 - codex-rs/app-server/src/thread_state.rs | 24 - .../tests/common/test_app_server.rs | 10 - .../v2/connection_handling_websocket_unix.rs | 4 - .../tests/suite/v2/git_attribution.rs | 16 +- .../app-server/tests/suite/v2/guardian_v2.rs | 23 +- .../suite/v2/guardian_v2_history_tests.rs | 56 +- codex-rs/app-server/tests/suite/v2/mod.rs | 1 - .../tests/suite/v2/thread_rollback.rs | 343 --- .../app-server/tests/suite/v2/turn_start.rs | 1 - codex-rs/core/src/context_manager/history.rs | 2 +- codex-rs/core/src/rollout_budget.rs | 8 - codex-rs/core/src/session/handlers.rs | 131 - codex-rs/core/src/session/reasoning_effort.rs | 4 +- codex-rs/core/src/session/tests.rs | 640 ---- codex-rs/core/src/session/turn.rs | 2 +- codex-rs/core/src/state/session.rs | 3 +- .../core/tests/suite/compact_resume_fork.rs | 237 -- .../tests/suite/guardian_authorization.rs | 12 +- codex-rs/core/tests/suite/guardian_history.rs | 41 +- .../tests/suite/guardian_retained_context.rs | 94 +- codex-rs/core/tests/suite/model_switching.rs | 239 -- .../tests/suite/reasoning_effort_override.rs | 150 +- codex-rs/core/tests/suite/rollout_budget.rs | 56 - ...k_followup_turn_trims_context_updates.snap | 23 - ...fork__rollback_past_compaction_shapes.snap | 26 - codex-rs/protocol/src/protocol.rs | 11 +- codex-rs/rollout/src/model_context.rs | 2 +- codex-rs/thread-store/src/store.rs | 2 +- codex-rs/thread-store/src/types.rs | 2 +- codex-rs/tui/src/app.rs | 3 +- codex-rs/tui/src/pager_overlay.rs | 2 +- .../src/openai_codex/generated/v2_all.py | 40 +- 65 files changed, 124 insertions(+), 5472 deletions(-) delete mode 100644 codex-rs/app-server-protocol/schema/json/v2/ThreadRollbackParams.json delete mode 100644 codex-rs/app-server-protocol/schema/json/v2/ThreadRollbackResponse.json delete mode 100644 codex-rs/app-server-protocol/schema/typescript/v2/ThreadRollbackParams.ts delete mode 100644 codex-rs/app-server-protocol/schema/typescript/v2/ThreadRollbackResponse.ts delete mode 100644 codex-rs/app-server/tests/suite/v2/thread_rollback.rs delete mode 100644 codex-rs/core/tests/suite/snapshots/all__suite__compact_resume_fork__rollback_followup_turn_trims_context_updates.snap delete mode 100644 codex-rs/core/tests/suite/snapshots/all__suite__compact_resume_fork__rollback_past_compaction_shapes.snap diff --git a/codex-rs/app-server-protocol/schema/json/ClientRequest.json b/codex-rs/app-server-protocol/schema/json/ClientRequest.json index 641708d961..d2a9de926a 100644 --- a/codex-rs/app-server-protocol/schema/json/ClientRequest.json +++ b/codex-rs/app-server-protocol/schema/json/ClientRequest.json @@ -4941,25 +4941,6 @@ ], "type": "object" }, - "ThreadRollbackParams": { - "description": "DEPRECATED: `thread/rollback` will be removed soon.", - "properties": { - "numTurns": { - "description": "The number of turns to drop from the end of the thread. Must be >= 1.\n\nThis only modifies the thread's history and does not revert local file changes that have been made by the agent. Clients are responsible for reverting these changes.", - "format": "uint32", - "minimum": 0.0, - "type": "integer" - }, - "threadId": { - "type": "string" - } - }, - "required": [ - "numTurns", - "threadId" - ], - "type": "object" - }, "ThreadSearchSortKey": { "enum": [ "created_at", @@ -6325,30 +6306,6 @@ "title": "Thread/approveGuardianDeniedActionRequest", "type": "object" }, - { - "properties": { - "id": { - "$ref": "#/definitions/RequestId" - }, - "method": { - "enum": [ - "thread/rollback" - ], - "title": "Thread/rollbackRequestMethod", - "type": "string" - }, - "params": { - "$ref": "#/definitions/ThreadRollbackParams" - } - }, - "required": [ - "id", - "method", - "params" - ], - "title": "Thread/rollbackRequest", - "type": "object" - }, { "properties": { "id": { diff --git a/codex-rs/app-server-protocol/schema/json/ServerNotification.json b/codex-rs/app-server-protocol/schema/json/ServerNotification.json index 83129264a9..83aa38fdcf 100644 --- a/codex-rs/app-server-protocol/schema/json/ServerNotification.json +++ b/codex-rs/app-server-protocol/schema/json/ServerNotification.json @@ -4276,7 +4276,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/codex_app_server_protocol.schemas.json b/codex-rs/app-server-protocol/schema/json/codex_app_server_protocol.schemas.json index 6bbd4aedbd..9e791e93e3 100644 --- a/codex-rs/app-server-protocol/schema/json/codex_app_server_protocol.schemas.json +++ b/codex-rs/app-server-protocol/schema/json/codex_app_server_protocol.schemas.json @@ -684,30 +684,6 @@ "title": "Thread/approveGuardianDeniedActionRequest", "type": "object" }, - { - "properties": { - "id": { - "$ref": "#/definitions/v2/RequestId" - }, - "method": { - "enum": [ - "thread/rollback" - ], - "title": "Thread/rollbackRequestMethod", - "type": "string" - }, - "params": { - "$ref": "#/definitions/v2/ThreadRollbackParams" - } - }, - "required": [ - "id", - "method", - "params" - ], - "title": "Thread/rollbackRequest", - "type": "object" - }, { "properties": { "id": { @@ -20602,7 +20578,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/v2/Turn" }, @@ -23503,45 +23479,6 @@ "title": "ThreadRevertedNotification", "type": "object" }, - "ThreadRollbackParams": { - "$schema": "http://json-schema.org/draft-07/schema#", - "description": "DEPRECATED: `thread/rollback` will be removed soon.", - "properties": { - "numTurns": { - "description": "The number of turns to drop from the end of the thread. Must be >= 1.\n\nThis only modifies the thread's history and does not revert local file changes that have been made by the agent. Clients are responsible for reverting these changes.", - "format": "uint32", - "minimum": 0.0, - "type": "integer" - }, - "threadId": { - "type": "string" - } - }, - "required": [ - "numTurns", - "threadId" - ], - "title": "ThreadRollbackParams", - "type": "object" - }, - "ThreadRollbackResponse": { - "$schema": "http://json-schema.org/draft-07/schema#", - "properties": { - "thread": { - "allOf": [ - { - "$ref": "#/definitions/v2/Thread" - } - ], - "description": "The updated thread after applying the rollback, with `turns` populated.\n\nThe ThreadItems stored in each Turn are lossy since we explicitly do not persist all agent interactions, such as command executions. This is the same behavior as `thread/resume`." - } - }, - "required": [ - "thread" - ], - "title": "ThreadRollbackResponse", - "type": "object" - }, "ThreadSearchResult": { "properties": { "snippet": { diff --git a/codex-rs/app-server-protocol/schema/json/codex_app_server_protocol.v2.schemas.json b/codex-rs/app-server-protocol/schema/json/codex_app_server_protocol.v2.schemas.json index 45f5721082..483c1fb9da 100644 --- a/codex-rs/app-server-protocol/schema/json/codex_app_server_protocol.v2.schemas.json +++ b/codex-rs/app-server-protocol/schema/json/codex_app_server_protocol.v2.schemas.json @@ -2214,30 +2214,6 @@ "title": "Thread/approveGuardianDeniedActionRequest", "type": "object" }, - { - "properties": { - "id": { - "$ref": "#/definitions/RequestId" - }, - "method": { - "enum": [ - "thread/rollback" - ], - "title": "Thread/rollbackRequestMethod", - "type": "string" - }, - "params": { - "$ref": "#/definitions/ThreadRollbackParams" - } - }, - "required": [ - "id", - "method", - "params" - ], - "title": "Thread/rollbackRequest", - "type": "object" - }, { "properties": { "id": { @@ -18316,7 +18292,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, @@ -21217,45 +21193,6 @@ "title": "ThreadRevertedNotification", "type": "object" }, - "ThreadRollbackParams": { - "$schema": "http://json-schema.org/draft-07/schema#", - "description": "DEPRECATED: `thread/rollback` will be removed soon.", - "properties": { - "numTurns": { - "description": "The number of turns to drop from the end of the thread. Must be >= 1.\n\nThis only modifies the thread's history and does not revert local file changes that have been made by the agent. Clients are responsible for reverting these changes.", - "format": "uint32", - "minimum": 0.0, - "type": "integer" - }, - "threadId": { - "type": "string" - } - }, - "required": [ - "numTurns", - "threadId" - ], - "title": "ThreadRollbackParams", - "type": "object" - }, - "ThreadRollbackResponse": { - "$schema": "http://json-schema.org/draft-07/schema#", - "properties": { - "thread": { - "allOf": [ - { - "$ref": "#/definitions/Thread" - } - ], - "description": "The updated thread after applying the rollback, with `turns` populated.\n\nThe ThreadItems stored in each Turn are lossy since we explicitly do not persist all agent interactions, such as command executions. This is the same behavior as `thread/resume`." - } - }, - "required": [ - "thread" - ], - "title": "ThreadRollbackResponse", - "type": "object" - }, "ThreadSearchResult": { "properties": { "snippet": { diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadForkResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadForkResponse.json index 829579af3c..8a7fa76e53 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadForkResponse.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadForkResponse.json @@ -1456,7 +1456,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadListResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadListResponse.json index 58a0e80aae..32101efd89 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadListResponse.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadListResponse.json @@ -1247,7 +1247,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadMetadataUpdateResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadMetadataUpdateResponse.json index 1975d98e26..f411af6d60 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadMetadataUpdateResponse.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadMetadataUpdateResponse.json @@ -1247,7 +1247,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadReadResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadReadResponse.json index b3e3ca9ba3..a639e719b8 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadReadResponse.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadReadResponse.json @@ -1247,7 +1247,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadResumeResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadResumeResponse.json index 9569af82c3..ba6a006381 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadResumeResponse.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadResumeResponse.json @@ -1456,7 +1456,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadRevertResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadRevertResponse.json index 72928d2f2a..8dd0da9b6a 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadRevertResponse.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadRevertResponse.json @@ -1247,7 +1247,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadRollbackParams.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadRollbackParams.json deleted file mode 100644 index aa52fbd598..0000000000 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadRollbackParams.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "description": "DEPRECATED: `thread/rollback` will be removed soon.", - "properties": { - "numTurns": { - "description": "The number of turns to drop from the end of the thread. Must be >= 1.\n\nThis only modifies the thread's history and does not revert local file changes that have been made by the agent. Clients are responsible for reverting these changes.", - "format": "uint32", - "minimum": 0.0, - "type": "integer" - }, - "threadId": { - "type": "string" - } - }, - "required": [ - "numTurns", - "threadId" - ], - "title": "ThreadRollbackParams", - "type": "object" -} \ No newline at end of file diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadRollbackResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadRollbackResponse.json deleted file mode 100644 index 33396542a5..0000000000 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadRollbackResponse.json +++ /dev/null @@ -1,2736 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "definitions": { - "AbsolutePathBuf": { - "description": "A path that is guaranteed to be absolute and normalized (though it is not guaranteed to be canonicalized or exist on the filesystem).\n\nIMPORTANT: When deserializing an `AbsolutePathBuf`, a base path must be set using [AbsolutePathBufGuard::new]. If no base path is set, the deserialization will fail unless the path being deserialized is already absolute.", - "type": "string" - }, - "AgentMessageDelivery": { - "enum": [ - "async" - ], - "type": "string" - }, - "AgentPath": { - "type": "string" - }, - "AsyncUserInputQuestion": { - "additionalProperties": false, - "properties": { - "options": { - "items": { - "type": "string" - }, - "type": [ - "array", - "null" - ] - }, - "title": { - "type": "string" - } - }, - "required": [ - "title" - ], - "type": "object" - }, - "ByteRange": { - "properties": { - "end": { - "format": "uint", - "minimum": 0.0, - "type": "integer" - }, - "start": { - "format": "uint", - "minimum": 0.0, - "type": "integer" - } - }, - "required": [ - "end", - "start" - ], - "type": "object" - }, - "CodexErrorInfo": { - "description": "This translation layer make sure that we expose codex error code in camel case.\n\nWhen an upstream HTTP status is available (for example, from the Responses API or a provider), it is forwarded in `httpStatusCode` on the relevant `codexErrorInfo` variant.", - "oneOf": [ - { - "enum": [ - "contextWindowExceeded", - "sessionBudgetExceeded", - "usageLimitExceeded", - "rateLimitExceeded", - "serverOverloaded", - "cyberPolicy", - "misalignmentPolicyViolation", - "internalServerError", - "unauthorized", - "badRequest", - "threadRollbackFailed", - "sandboxError", - "other" - ], - "type": "string" - }, - { - "additionalProperties": false, - "properties": { - "httpConnectionFailed": { - "properties": { - "httpStatusCode": { - "format": "uint16", - "minimum": 0.0, - "type": [ - "integer", - "null" - ] - } - }, - "type": "object" - } - }, - "required": [ - "httpConnectionFailed" - ], - "title": "HttpConnectionFailedCodexErrorInfo", - "type": "object" - }, - { - "additionalProperties": false, - "description": "Failed to connect to the response SSE stream.", - "properties": { - "responseStreamConnectionFailed": { - "properties": { - "httpStatusCode": { - "format": "uint16", - "minimum": 0.0, - "type": [ - "integer", - "null" - ] - } - }, - "type": "object" - } - }, - "required": [ - "responseStreamConnectionFailed" - ], - "title": "ResponseStreamConnectionFailedCodexErrorInfo", - "type": "object" - }, - { - "additionalProperties": false, - "description": "The response SSE stream disconnected in the middle of a turn before completion.", - "properties": { - "responseStreamDisconnected": { - "properties": { - "httpStatusCode": { - "format": "uint16", - "minimum": 0.0, - "type": [ - "integer", - "null" - ] - } - }, - "type": "object" - } - }, - "required": [ - "responseStreamDisconnected" - ], - "title": "ResponseStreamDisconnectedCodexErrorInfo", - "type": "object" - }, - { - "additionalProperties": false, - "description": "Reached the retry limit for responses.", - "properties": { - "responseTooManyFailedAttempts": { - "properties": { - "httpStatusCode": { - "format": "uint16", - "minimum": 0.0, - "type": [ - "integer", - "null" - ] - } - }, - "type": "object" - } - }, - "required": [ - "responseTooManyFailedAttempts" - ], - "title": "ResponseTooManyFailedAttemptsCodexErrorInfo", - "type": "object" - }, - { - "additionalProperties": false, - "description": "Returned when `turn/start` or `turn/steer` is submitted while the current active turn cannot accept same-turn steering, for example `/review` or manual `/compact`.", - "properties": { - "activeTurnNotSteerable": { - "properties": { - "turnKind": { - "$ref": "#/definitions/NonSteerableTurnKind" - } - }, - "required": [ - "turnKind" - ], - "type": "object" - } - }, - "required": [ - "activeTurnNotSteerable" - ], - "title": "ActiveTurnNotSteerableCodexErrorInfo", - "type": "object" - } - ] - }, - "CollabAgentState": { - "properties": { - "message": { - "type": [ - "string", - "null" - ] - }, - "status": { - "$ref": "#/definitions/CollabAgentStatus" - } - }, - "required": [ - "status" - ], - "type": "object" - }, - "CollabAgentStatus": { - "enum": [ - "pendingInit", - "running", - "interrupted", - "completed", - "errored", - "shutdown", - "notFound" - ], - "type": "string" - }, - "CollabAgentTool": { - "enum": [ - "spawnAgent", - "sendInput", - "resumeAgent", - "wait", - "closeAgent", - "sendMessage", - "followupTask", - "interruptAgent", - "listAgents" - ], - "type": "string" - }, - "CollabAgentToolCallStatus": { - "enum": [ - "inProgress", - "completed", - "failed", - "interrupted" - ], - "type": "string" - }, - "CommandAction": { - "oneOf": [ - { - "properties": { - "command": { - "type": "string" - }, - "name": { - "type": "string" - }, - "path": { - "$ref": "#/definitions/LegacyAppPathString" - }, - "type": { - "enum": [ - "read" - ], - "title": "ReadCommandActionType", - "type": "string" - } - }, - "required": [ - "command", - "name", - "path", - "type" - ], - "title": "ReadCommandAction", - "type": "object" - }, - { - "properties": { - "command": { - "type": "string" - }, - "path": { - "type": [ - "string", - "null" - ] - }, - "type": { - "enum": [ - "listFiles" - ], - "title": "ListFilesCommandActionType", - "type": "string" - } - }, - "required": [ - "command", - "type" - ], - "title": "ListFilesCommandAction", - "type": "object" - }, - { - "properties": { - "command": { - "type": "string" - }, - "path": { - "type": [ - "string", - "null" - ] - }, - "query": { - "type": [ - "string", - "null" - ] - }, - "type": { - "enum": [ - "search" - ], - "title": "SearchCommandActionType", - "type": "string" - } - }, - "required": [ - "command", - "type" - ], - "title": "SearchCommandAction", - "type": "object" - }, - { - "properties": { - "command": { - "type": "string" - }, - "type": { - "enum": [ - "unknown" - ], - "title": "UnknownCommandActionType", - "type": "string" - } - }, - "required": [ - "command", - "type" - ], - "title": "UnknownCommandAction", - "type": "object" - } - ] - }, - "CommandExecutionSource": { - "enum": [ - "agent", - "userShell", - "unifiedExecStartup", - "unifiedExecInteraction" - ], - "type": "string" - }, - "CommandExecutionStatus": { - "enum": [ - "inProgress", - "completed", - "failed", - "declined" - ], - "type": "string" - }, - "DynamicToolCallOutputContentItem": { - "oneOf": [ - { - "properties": { - "text": { - "type": "string" - }, - "type": { - "enum": [ - "inputText" - ], - "title": "InputTextDynamicToolCallOutputContentItemType", - "type": "string" - } - }, - "required": [ - "text", - "type" - ], - "title": "InputTextDynamicToolCallOutputContentItem", - "type": "object" - }, - { - "properties": { - "imageUrl": { - "type": "string" - }, - "type": { - "enum": [ - "inputImage" - ], - "title": "InputImageDynamicToolCallOutputContentItemType", - "type": "string" - } - }, - "required": [ - "imageUrl", - "type" - ], - "title": "InputImageDynamicToolCallOutputContentItem", - "type": "object" - }, - { - "properties": { - "audioUrl": { - "type": "string" - }, - "type": { - "enum": [ - "inputAudio" - ], - "title": "InputAudioDynamicToolCallOutputContentItemType", - "type": "string" - } - }, - "required": [ - "audioUrl", - "type" - ], - "title": "InputAudioDynamicToolCallOutputContentItem", - "type": "object" - } - ] - }, - "DynamicToolCallStatus": { - "enum": [ - "inProgress", - "completed", - "failed" - ], - "type": "string" - }, - "FileUpdateChange": { - "properties": { - "diff": { - "type": "string" - }, - "kind": { - "$ref": "#/definitions/PatchChangeKind" - }, - "path": { - "type": "string" - } - }, - "required": [ - "diff", - "kind", - "path" - ], - "type": "object" - }, - "FunctionCallOutputBody": { - "anyOf": [ - { - "type": "string" - }, - { - "items": { - "$ref": "#/definitions/FunctionCallOutputContentItem" - }, - "type": "array" - } - ] - }, - "FunctionCallOutputContentItem": { - "description": "Responses API compatible content items that can be returned by a tool call. This is a subset of ContentItem with the types we support as function call outputs.", - "oneOf": [ - { - "properties": { - "text": { - "type": "string" - }, - "type": { - "enum": [ - "input_text" - ], - "title": "InputTextFunctionCallOutputContentItemType", - "type": "string" - } - }, - "required": [ - "text", - "type" - ], - "title": "InputTextFunctionCallOutputContentItem", - "type": "object" - }, - { - "properties": { - "detail": { - "anyOf": [ - { - "$ref": "#/definitions/ImageDetail" - }, - { - "type": "null" - } - ] - }, - "image_url": { - "type": "string" - }, - "type": { - "enum": [ - "input_image" - ], - "title": "InputImageFunctionCallOutputContentItemType", - "type": "string" - } - }, - "required": [ - "image_url", - "type" - ], - "title": "InputImageFunctionCallOutputContentItem", - "type": "object" - }, - { - "properties": { - "audio_url": { - "type": "string" - }, - "type": { - "enum": [ - "input_audio" - ], - "title": "InputAudioFunctionCallOutputContentItemType", - "type": "string" - } - }, - "required": [ - "audio_url", - "type" - ], - "title": "InputAudioFunctionCallOutputContentItem", - "type": "object" - }, - { - "properties": { - "encrypted_content": { - "type": "string" - }, - "type": { - "enum": [ - "encrypted_content" - ], - "title": "EncryptedContentFunctionCallOutputContentItemType", - "type": "string" - } - }, - "required": [ - "encrypted_content", - "type" - ], - "title": "EncryptedContentFunctionCallOutputContentItem", - "type": "object" - } - ] - }, - "GitInfo": { - "properties": { - "branch": { - "type": [ - "string", - "null" - ] - }, - "originUrl": { - "type": [ - "string", - "null" - ] - }, - "sha": { - "type": [ - "string", - "null" - ] - } - }, - "type": "object" - }, - "HookPromptFragment": { - "properties": { - "hookRunId": { - "type": "string" - }, - "text": { - "type": "string" - } - }, - "required": [ - "hookRunId", - "text" - ], - "type": "object" - }, - "ImageDetail": { - "enum": [ - "auto", - "low", - "high", - "original" - ], - "type": "string" - }, - "ImageGenerationFailure": { - "oneOf": [ - { - "properties": { - "limitId": { - "type": "string" - }, - "resetsAt": { - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "type": { - "enum": [ - "usageLimitExceeded" - ], - "title": "UsageLimitExceededImageGenerationFailureType", - "type": "string" - } - }, - "required": [ - "limitId", - "type" - ], - "title": "UsageLimitExceededImageGenerationFailure", - "type": "object" - } - ] - }, - "LegacyAppPathString": { - "type": "string" - }, - "McpToolCallAppContext": { - "properties": { - "actionName": { - "type": [ - "string", - "null" - ] - }, - "appName": { - "type": [ - "string", - "null" - ] - }, - "connectorId": { - "type": "string" - }, - "linkId": { - "type": [ - "string", - "null" - ] - }, - "resourceUri": { - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "connectorId" - ], - "type": "object" - }, - "McpToolCallError": { - "properties": { - "message": { - "type": "string" - } - }, - "required": [ - "message" - ], - "type": "object" - }, - "McpToolCallResult": { - "properties": { - "_meta": true, - "content": { - "items": true, - "type": "array" - }, - "structuredContent": true - }, - "required": [ - "content" - ], - "type": "object" - }, - "McpToolCallStatus": { - "enum": [ - "inProgress", - "completed", - "failed" - ], - "type": "string" - }, - "MemoryCitation": { - "properties": { - "entries": { - "items": { - "$ref": "#/definitions/MemoryCitationEntry" - }, - "type": "array" - }, - "threadIds": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "entries", - "threadIds" - ], - "type": "object" - }, - "MemoryCitationEntry": { - "properties": { - "lineEnd": { - "format": "uint32", - "minimum": 0.0, - "type": "integer" - }, - "lineStart": { - "format": "uint32", - "minimum": 0.0, - "type": "integer" - }, - "note": { - "type": "string" - }, - "path": { - "type": "string" - } - }, - "required": [ - "lineEnd", - "lineStart", - "note", - "path" - ], - "type": "object" - }, - "MessagePhase": { - "description": "Classifies an assistant message as interim commentary or final answer text.\n\nProviders do not emit this consistently, so callers must treat `None` as \"phase unknown\" and keep compatibility behavior for legacy models.", - "oneOf": [ - { - "description": "Mid-turn assistant text (for example preamble/progress narration).\n\nAdditional tool calls or assistant output may follow before turn completion.", - "enum": [ - "commentary" - ], - "type": "string" - }, - { - "description": "The assistant's terminal answer text for the current turn.", - "enum": [ - "final_answer" - ], - "type": "string" - } - ] - }, - "MisalignmentErrorDetails": { - "properties": { - "detailedExplanation": { - "description": "A substantive localized explanation is required before offering continuation.", - "type": [ - "string", - "null" - ] - }, - "errorType": { - "description": "Open-ended classification; clients must accept categories added by Responses.", - "type": [ - "string", - "null" - ] - }, - "steer": { - "anyOf": [ - { - "$ref": "#/definitions/MisalignmentSteer" - }, - { - "type": "null" - } - ], - "description": "Instruction to submit as the next turn's user input if continuation is confirmed." - } - }, - "type": "object" - }, - "MisalignmentSteer": { - "properties": { - "message": { - "type": "string" - } - }, - "required": [ - "message" - ], - "type": "object" - }, - "NonSteerableTurnKind": { - "enum": [ - "review", - "compact" - ], - "type": "string" - }, - "PatchApplyStatus": { - "enum": [ - "inProgress", - "completed", - "failed", - "declined" - ], - "type": "string" - }, - "PatchChangeKind": { - "oneOf": [ - { - "properties": { - "type": { - "enum": [ - "add" - ], - "title": "AddPatchChangeKindType", - "type": "string" - } - }, - "required": [ - "type" - ], - "title": "AddPatchChangeKind", - "type": "object" - }, - { - "properties": { - "type": { - "enum": [ - "delete" - ], - "title": "DeletePatchChangeKindType", - "type": "string" - } - }, - "required": [ - "type" - ], - "title": "DeletePatchChangeKind", - "type": "object" - }, - { - "properties": { - "move_path": { - "type": [ - "string", - "null" - ] - }, - "type": { - "enum": [ - "update" - ], - "title": "UpdatePatchChangeKindType", - "type": "string" - } - }, - "required": [ - "type" - ], - "title": "UpdatePatchChangeKind", - "type": "object" - } - ] - }, - "ReasoningEffort": { - "description": "A non-empty reasoning effort value advertised by the model.", - "minLength": 1, - "type": "string" - }, - "SessionSource": { - "oneOf": [ - { - "enum": [ - "cli", - "vscode", - "exec", - "appServer", - "unknown" - ], - "type": "string" - }, - { - "additionalProperties": false, - "properties": { - "custom": { - "type": "string" - } - }, - "required": [ - "custom" - ], - "title": "CustomSessionSource", - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "subAgent": { - "$ref": "#/definitions/SubAgentSource" - } - }, - "required": [ - "subAgent" - ], - "title": "SubAgentSessionSource", - "type": "object" - } - ] - }, - "SubAgentActivityKind": { - "enum": [ - "started", - "interacted", - "interrupted", - "completed" - ], - "type": "string" - }, - "SubAgentSource": { - "oneOf": [ - { - "enum": [ - "review", - "compact", - "memory_consolidation" - ], - "type": "string" - }, - { - "additionalProperties": false, - "properties": { - "thread_spawn": { - "properties": { - "agent_nickname": { - "default": null, - "type": [ - "string", - "null" - ] - }, - "agent_path": { - "anyOf": [ - { - "$ref": "#/definitions/AgentPath" - }, - { - "type": "null" - } - ], - "default": null - }, - "agent_role": { - "default": null, - "type": [ - "string", - "null" - ] - }, - "depth": { - "format": "int32", - "type": "integer" - }, - "parent_thread_id": { - "$ref": "#/definitions/ThreadId" - } - }, - "required": [ - "depth", - "parent_thread_id" - ], - "type": "object" - } - }, - "required": [ - "thread_spawn" - ], - "title": "ThreadSpawnSubAgentSource", - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "other": { - "type": "string" - } - }, - "required": [ - "other" - ], - "title": "OtherSubAgentSource", - "type": "object" - } - ] - }, - "TextElement": { - "properties": { - "byteRange": { - "allOf": [ - { - "$ref": "#/definitions/ByteRange" - } - ], - "description": "Byte range in the parent `text` buffer that this element occupies." - }, - "placeholder": { - "description": "Optional human-readable placeholder for the element, displayed in the UI.", - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "byteRange" - ], - "type": "object" - }, - "Thread": { - "properties": { - "agentNickname": { - "description": "Optional random unique nickname assigned to an AgentControl-spawned sub-agent.", - "type": [ - "string", - "null" - ] - }, - "agentRole": { - "description": "Optional role (agent_role) assigned to an AgentControl-spawned sub-agent.", - "type": [ - "string", - "null" - ] - }, - "cliVersion": { - "description": "Version of the CLI that created the thread.", - "type": "string" - }, - "createdAt": { - "description": "Unix timestamp (in seconds) when the thread was created.", - "format": "int64", - "type": "integer" - }, - "cwd": { - "allOf": [ - { - "$ref": "#/definitions/AbsolutePathBuf" - } - ], - "description": "Working directory captured for the thread." - }, - "ephemeral": { - "description": "Whether the thread is ephemeral and should not be materialized on disk.", - "type": "boolean" - }, - "forkedFromId": { - "description": "Source thread id when this thread was created by forking another thread.", - "type": [ - "string", - "null" - ] - }, - "gitInfo": { - "anyOf": [ - { - "$ref": "#/definitions/GitInfo" - }, - { - "type": "null" - } - ], - "description": "Optional Git metadata captured when the thread was created." - }, - "historyMode": { - "allOf": [ - { - "$ref": "#/definitions/ThreadHistoryMode" - } - ], - "default": "legacy", - "description": "Persisted thread history contract selected when this thread was created." - }, - "id": { - "description": "Identifier for this thread. Codex-generated thread IDs are UUIDv7.", - "type": "string" - }, - "model": { - "description": "Current configured model when loaded, otherwise the latest persisted model. Null when unavailable. This is not per-turn execution telemetry.", - "type": [ - "string", - "null" - ] - }, - "modelProvider": { - "description": "Model provider used for this thread (for example, 'openai').", - "type": "string" - }, - "name": { - "description": "Optional user-facing thread title.", - "type": [ - "string", - "null" - ] - }, - "originator": { - "description": "Originator recorded when the thread was created, independent of its current client or executor. Null when the recorded originator is unavailable.", - "type": [ - "string", - "null" - ] - }, - "parentThreadId": { - "description": "The ID of the parent thread. This will only be set if this thread is a subagent.", - "type": [ - "string", - "null" - ] - }, - "path": { - "description": "[UNSTABLE] Path to the thread on disk.", - "type": [ - "string", - "null" - ] - }, - "preview": { - "description": "Usually the first user message in the thread, if available.", - "type": "string" - }, - "projectId": { - "description": "Canonical project assignment owned by app-server, if any.", - "type": [ - "string", - "null" - ] - }, - "reasoningEffort": { - "anyOf": [ - { - "$ref": "#/definitions/ReasoningEffort" - }, - { - "type": "null" - } - ], - "description": "Current configured reasoning effort when loaded, otherwise the latest persisted effort. Null when unset or unavailable. This is not per-turn execution telemetry." - }, - "recencyAt": { - "description": "Unix timestamp (in seconds) used for thread recency ordering.", - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "section": { - "anyOf": [ - { - "$ref": "#/definitions/ThreadSection" - }, - { - "type": "null" - } - ], - "default": null, - "description": "The independently persisted section selected for this thread, if any." - }, - "sectionEnteredAt": { - "default": null, - "description": "Unix timestamp in seconds when the thread entered its current section.", - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "sessionId": { - "description": "Session id shared by threads that belong to the same session tree.", - "type": "string" - }, - "source": { - "allOf": [ - { - "$ref": "#/definitions/SessionSource" - } - ], - "description": "Origin of the thread (CLI, VSCode, codex exec, codex app-server, etc.)." - }, - "status": { - "allOf": [ - { - "$ref": "#/definitions/ThreadStatus" - } - ], - "description": "Current runtime status for the thread." - }, - "threadSource": { - "anyOf": [ - { - "$ref": "#/definitions/ThreadSource" - }, - { - "type": "null" - } - ], - "description": "Optional analytics source classification for this thread." - }, - "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", - "items": { - "$ref": "#/definitions/Turn" - }, - "type": "array" - }, - "updatedAt": { - "description": "Unix timestamp (in seconds) when the thread was last updated.", - "format": "int64", - "type": "integer" - } - }, - "required": [ - "cliVersion", - "createdAt", - "cwd", - "ephemeral", - "id", - "modelProvider", - "preview", - "projectId", - "sessionId", - "source", - "status", - "turns", - "updatedAt" - ], - "type": "object" - }, - "ThreadActiveFlag": { - "enum": [ - "waitingOnApproval", - "waitingOnUserInput" - ], - "type": "string" - }, - "ThreadEnvironment": { - "description": "An environment selected by a loaded thread, independent of connection status.", - "properties": { - "cwd": { - "$ref": "#/definitions/LegacyAppPathString" - }, - "environmentId": { - "type": "string" - }, - "runtimeWorkspaceRoots": { - "items": { - "$ref": "#/definitions/LegacyAppPathString" - }, - "type": "array" - } - }, - "required": [ - "cwd", - "environmentId", - "runtimeWorkspaceRoots" - ], - "type": "object" - }, - "ThreadExtra": { - "description": "Extra app-server data for a thread.", - "type": "object" - }, - "ThreadHistoryMode": { - "enum": [ - "legacy", - "paginated" - ], - "type": "string" - }, - "ThreadId": { - "type": "string" - }, - "ThreadItem": { - "oneOf": [ - { - "properties": { - "clientId": { - "type": [ - "string", - "null" - ] - }, - "content": { - "items": { - "$ref": "#/definitions/UserInput" - }, - "type": "array" - }, - "id": { - "type": "string" - }, - "type": { - "enum": [ - "userMessage" - ], - "title": "UserMessageThreadItemType", - "type": "string" - } - }, - "required": [ - "content", - "id", - "type" - ], - "title": "UserMessageThreadItem", - "type": "object" - }, - { - "properties": { - "fragments": { - "items": { - "$ref": "#/definitions/HookPromptFragment" - }, - "type": "array" - }, - "id": { - "type": "string" - }, - "type": { - "enum": [ - "hookPrompt" - ], - "title": "HookPromptThreadItemType", - "type": "string" - } - }, - "required": [ - "fragments", - "id", - "type" - ], - "title": "HookPromptThreadItem", - "type": "object" - }, - { - "properties": { - "delivery": { - "anyOf": [ - { - "$ref": "#/definitions/AgentMessageDelivery" - }, - { - "type": "null" - } - ], - "default": null - }, - "id": { - "type": "string" - }, - "memoryCitation": { - "anyOf": [ - { - "$ref": "#/definitions/MemoryCitation" - }, - { - "type": "null" - } - ], - "default": null - }, - "phase": { - "anyOf": [ - { - "$ref": "#/definitions/MessagePhase" - }, - { - "type": "null" - } - ], - "default": null - }, - "questions": { - "default": null, - "items": { - "$ref": "#/definitions/AsyncUserInputQuestion" - }, - "type": [ - "array", - "null" - ] - }, - "text": { - "type": "string" - }, - "type": { - "enum": [ - "agentMessage" - ], - "title": "AgentMessageThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "text", - "type" - ], - "title": "AgentMessageThreadItem", - "type": "object" - }, - { - "properties": { - "id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "namespace": { - "type": [ - "string", - "null" - ] - }, - "output": { - "$ref": "#/definitions/FunctionCallOutputBody" - }, - "type": { - "enum": [ - "functionCallOutput" - ], - "title": "FunctionCallOutputThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "name", - "output", - "type" - ], - "title": "FunctionCallOutputThreadItem", - "type": "object" - }, - { - "description": "EXPERIMENTAL - proposed plan item content. The completed plan item is authoritative and may not match the concatenation of `PlanDelta` text.", - "properties": { - "id": { - "type": "string" - }, - "text": { - "type": "string" - }, - "type": { - "enum": [ - "plan" - ], - "title": "PlanThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "text", - "type" - ], - "title": "PlanThreadItem", - "type": "object" - }, - { - "properties": { - "content": { - "default": [], - "items": { - "type": "string" - }, - "type": "array" - }, - "id": { - "type": "string" - }, - "summary": { - "default": [], - "items": { - "type": "string" - }, - "type": "array" - }, - "type": { - "enum": [ - "reasoning" - ], - "title": "ReasoningThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "title": "ReasoningThreadItem", - "type": "object" - }, - { - "properties": { - "aggregatedOutput": { - "description": "The command's output, aggregated from stdout and stderr.", - "type": [ - "string", - "null" - ] - }, - "command": { - "description": "The command to be executed.", - "type": "string" - }, - "commandActions": { - "description": "A best-effort parsing of the command to understand the action(s) it will perform. This returns a list of CommandAction objects because a single shell command may be composed of many commands piped together.", - "items": { - "$ref": "#/definitions/CommandAction" - }, - "type": "array" - }, - "cwd": { - "allOf": [ - { - "$ref": "#/definitions/LegacyAppPathString" - } - ], - "description": "The command's working directory." - }, - "durationMs": { - "description": "The duration of the command execution in milliseconds.", - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "exitCode": { - "description": "The command's exit code.", - "format": "int32", - "type": [ - "integer", - "null" - ] - }, - "id": { - "type": "string" - }, - "pluginId": { - "default": null, - "description": "Trusted first-party plugin id when this command resolves to one plugin script.", - "type": [ - "string", - "null" - ] - }, - "processId": { - "description": "Identifier for the underlying PTY process (when available).", - "type": [ - "string", - "null" - ] - }, - "scriptPath": { - "default": null, - "description": "Safe plugin-relative path when this command resolves to one plugin script.", - "type": [ - "string", - "null" - ] - }, - "source": { - "allOf": [ - { - "$ref": "#/definitions/CommandExecutionSource" - } - ], - "default": "agent" - }, - "status": { - "$ref": "#/definitions/CommandExecutionStatus" - }, - "type": { - "enum": [ - "commandExecution" - ], - "title": "CommandExecutionThreadItemType", - "type": "string" - } - }, - "required": [ - "command", - "commandActions", - "cwd", - "id", - "status", - "type" - ], - "title": "CommandExecutionThreadItem", - "type": "object" - }, - { - "properties": { - "changes": { - "items": { - "$ref": "#/definitions/FileUpdateChange" - }, - "type": "array" - }, - "id": { - "type": "string" - }, - "status": { - "$ref": "#/definitions/PatchApplyStatus" - }, - "type": { - "enum": [ - "fileChange" - ], - "title": "FileChangeThreadItemType", - "type": "string" - } - }, - "required": [ - "changes", - "id", - "status", - "type" - ], - "title": "FileChangeThreadItem", - "type": "object" - }, - { - "properties": { - "appContext": { - "anyOf": [ - { - "$ref": "#/definitions/McpToolCallAppContext" - }, - { - "type": "null" - } - ] - }, - "arguments": true, - "durationMs": { - "description": "The duration of the MCP tool call in milliseconds.", - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "error": { - "anyOf": [ - { - "$ref": "#/definitions/McpToolCallError" - }, - { - "type": "null" - } - ] - }, - "id": { - "type": "string" - }, - "mcpAppResourceUri": { - "description": "Deprecated: use `appContext.resourceUri` instead.", - "type": [ - "string", - "null" - ] - }, - "pluginId": { - "type": [ - "string", - "null" - ] - }, - "readOnlyHint": { - "type": [ - "boolean", - "null" - ] - }, - "result": { - "anyOf": [ - { - "$ref": "#/definitions/McpToolCallResult" - }, - { - "type": "null" - } - ] - }, - "server": { - "type": "string" - }, - "status": { - "$ref": "#/definitions/McpToolCallStatus" - }, - "tool": { - "type": "string" - }, - "type": { - "enum": [ - "mcpToolCall" - ], - "title": "McpToolCallThreadItemType", - "type": "string" - } - }, - "required": [ - "arguments", - "id", - "server", - "status", - "tool", - "type" - ], - "title": "McpToolCallThreadItem", - "type": "object" - }, - { - "properties": { - "arguments": true, - "contentItems": { - "items": { - "$ref": "#/definitions/DynamicToolCallOutputContentItem" - }, - "type": [ - "array", - "null" - ] - }, - "durationMs": { - "description": "The duration of the dynamic tool call in milliseconds.", - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "id": { - "type": "string" - }, - "namespace": { - "type": [ - "string", - "null" - ] - }, - "status": { - "$ref": "#/definitions/DynamicToolCallStatus" - }, - "success": { - "type": [ - "boolean", - "null" - ] - }, - "tool": { - "type": "string" - }, - "type": { - "enum": [ - "dynamicToolCall" - ], - "title": "DynamicToolCallThreadItemType", - "type": "string" - } - }, - "required": [ - "arguments", - "id", - "status", - "tool", - "type" - ], - "title": "DynamicToolCallThreadItem", - "type": "object" - }, - { - "properties": { - "agentsStates": { - "additionalProperties": { - "$ref": "#/definitions/CollabAgentState" - }, - "description": "Last known status of the target agents, when available.", - "type": "object" - }, - "id": { - "description": "Unique identifier for this collab tool call.", - "type": "string" - }, - "model": { - "description": "Model requested for the spawned agent, when applicable.", - "type": [ - "string", - "null" - ] - }, - "prompt": { - "description": "Prompt text sent as part of the collab tool call, when available.", - "type": [ - "string", - "null" - ] - }, - "reasoningEffort": { - "anyOf": [ - { - "$ref": "#/definitions/ReasoningEffort" - }, - { - "type": "null" - } - ], - "description": "Reasoning effort requested for the spawned agent, when applicable." - }, - "receiverThreadIds": { - "description": "Thread ID of the receiving agent, when applicable. In case of spawn operation, this corresponds to the newly spawned agent.", - "items": { - "type": "string" - }, - "type": "array" - }, - "senderThreadId": { - "description": "Thread ID of the agent issuing the collab request.", - "type": "string" - }, - "status": { - "allOf": [ - { - "$ref": "#/definitions/CollabAgentToolCallStatus" - } - ], - "description": "Current status of the collab tool call." - }, - "tool": { - "allOf": [ - { - "$ref": "#/definitions/CollabAgentTool" - } - ], - "description": "Name of the collab tool that was invoked." - }, - "type": { - "enum": [ - "collabAgentToolCall" - ], - "title": "CollabAgentToolCallThreadItemType", - "type": "string" - } - }, - "required": [ - "agentsStates", - "id", - "receiverThreadIds", - "senderThreadId", - "status", - "tool", - "type" - ], - "title": "CollabAgentToolCallThreadItem", - "type": "object" - }, - { - "properties": { - "agentPath": { - "type": "string" - }, - "agentThreadId": { - "type": "string" - }, - "id": { - "type": "string" - }, - "kind": { - "$ref": "#/definitions/SubAgentActivityKind" - }, - "type": { - "enum": [ - "subAgentActivity" - ], - "title": "SubAgentActivityThreadItemType", - "type": "string" - } - }, - "required": [ - "agentPath", - "agentThreadId", - "id", - "kind", - "type" - ], - "title": "SubAgentActivityThreadItem", - "type": "object" - }, - { - "properties": { - "action": { - "anyOf": [ - { - "$ref": "#/definitions/WebSearchAction" - }, - { - "type": "null" - } - ] - }, - "id": { - "type": "string" - }, - "query": { - "type": "string" - }, - "results": { - "default": null, - "description": "Structured search results returned out-of-band by standalone web search.\n\nThese stay as opaque JSON at the extension/app-server boundary so new result fields and result types can pass through without a Codex release.", - "items": true, - "type": [ - "array", - "null" - ] - }, - "type": { - "enum": [ - "webSearch" - ], - "title": "WebSearchThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "query", - "type" - ], - "title": "WebSearchThreadItem", - "type": "object" - }, - { - "properties": { - "id": { - "type": "string" - }, - "path": { - "$ref": "#/definitions/LegacyAppPathString" - }, - "type": { - "enum": [ - "imageView" - ], - "title": "ImageViewThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "path", - "type" - ], - "title": "ImageViewThreadItem", - "type": "object" - }, - { - "description": "Display item emitted by the interruptible `clock.sleep` tool.", - "properties": { - "durationMs": { - "format": "uint64", - "minimum": 0.0, - "type": "integer" - }, - "id": { - "type": "string" - }, - "type": { - "enum": [ - "sleep" - ], - "title": "SleepThreadItemType", - "type": "string" - } - }, - "required": [ - "durationMs", - "id", - "type" - ], - "title": "SleepThreadItem", - "type": "object" - }, - { - "properties": { - "failure": { - "anyOf": [ - { - "$ref": "#/definitions/ImageGenerationFailure" - }, - { - "type": "null" - } - ], - "default": null - }, - "id": { - "type": "string" - }, - "result": { - "type": "string" - }, - "revisedPrompt": { - "type": [ - "string", - "null" - ] - }, - "savedPath": { - "anyOf": [ - { - "$ref": "#/definitions/AbsolutePathBuf" - }, - { - "type": "null" - } - ] - }, - "status": { - "type": "string" - }, - "transparentBackground": { - "default": null, - "type": [ - "boolean", - "null" - ] - }, - "type": { - "enum": [ - "imageGeneration" - ], - "title": "ImageGenerationThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "result", - "status", - "type" - ], - "title": "ImageGenerationThreadItem", - "type": "object" - }, - { - "properties": { - "id": { - "type": "string" - }, - "review": { - "type": "string" - }, - "type": { - "enum": [ - "enteredReviewMode" - ], - "title": "EnteredReviewModeThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "review", - "type" - ], - "title": "EnteredReviewModeThreadItem", - "type": "object" - }, - { - "properties": { - "id": { - "type": "string" - }, - "review": { - "type": "string" - }, - "type": { - "enum": [ - "exitedReviewMode" - ], - "title": "ExitedReviewModeThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "review", - "type" - ], - "title": "ExitedReviewModeThreadItem", - "type": "object" - }, - { - "properties": { - "id": { - "type": "string" - }, - "type": { - "enum": [ - "contextCompaction" - ], - "title": "ContextCompactionThreadItemType", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "title": "ContextCompactionThreadItem", - "type": "object" - } - ] - }, - "ThreadSection": { - "description": "An independently persisted, user-visible thread section.", - "properties": { - "appearance": { - "anyOf": [ - { - "$ref": "#/definitions/ThreadSectionAppearance" - }, - { - "type": "null" - } - ], - "default": null, - "description": "Optional appearance synchronized across clients." - }, - "id": { - "description": "Opaque UUIDv7 identity that remains stable when the section is renamed.", - "type": "string" - }, - "name": { - "description": "The current user-visible section name.", - "type": "string" - } - }, - "required": [ - "id", - "name" - ], - "type": "object" - }, - "ThreadSectionAppearance": { - "description": "Extensible visual presentation for a custom thread section.", - "properties": { - "color": { - "type": [ - "string", - "null" - ] - }, - "icon": { - "type": [ - "string", - "null" - ] - } - }, - "type": "object" - }, - "ThreadSource": { - "type": "string" - }, - "ThreadStatus": { - "oneOf": [ - { - "properties": { - "type": { - "enum": [ - "notLoaded" - ], - "title": "NotLoadedThreadStatusType", - "type": "string" - } - }, - "required": [ - "type" - ], - "title": "NotLoadedThreadStatus", - "type": "object" - }, - { - "properties": { - "type": { - "enum": [ - "idle" - ], - "title": "IdleThreadStatusType", - "type": "string" - } - }, - "required": [ - "type" - ], - "title": "IdleThreadStatus", - "type": "object" - }, - { - "properties": { - "type": { - "enum": [ - "systemError" - ], - "title": "SystemErrorThreadStatusType", - "type": "string" - } - }, - "required": [ - "type" - ], - "title": "SystemErrorThreadStatus", - "type": "object" - }, - { - "properties": { - "activeFlags": { - "items": { - "$ref": "#/definitions/ThreadActiveFlag" - }, - "type": "array" - }, - "type": { - "enum": [ - "active" - ], - "title": "ActiveThreadStatusType", - "type": "string" - } - }, - "required": [ - "activeFlags", - "type" - ], - "title": "ActiveThreadStatus", - "type": "object" - } - ] - }, - "Turn": { - "properties": { - "completedAt": { - "description": "Unix timestamp (in seconds) when the turn completed.", - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "durationMs": { - "description": "Duration between turn start and completion in milliseconds, if known.", - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "error": { - "anyOf": [ - { - "$ref": "#/definitions/TurnError" - }, - { - "type": "null" - } - ], - "description": "Only populated when the Turn's status is failed." - }, - "id": { - "description": "Identifier for this turn. Codex-generated turn IDs are UUIDv7.", - "type": "string" - }, - "items": { - "description": "Thread items currently included in this turn payload.", - "items": { - "$ref": "#/definitions/ThreadItem" - }, - "type": "array" - }, - "itemsView": { - "allOf": [ - { - "$ref": "#/definitions/TurnItemsView" - } - ], - "default": "full", - "description": "Describes how much of `items` has been loaded for this turn." - }, - "startedAt": { - "description": "Unix timestamp (in seconds) when the turn started.", - "format": "int64", - "type": [ - "integer", - "null" - ] - }, - "status": { - "$ref": "#/definitions/TurnStatus" - } - }, - "required": [ - "id", - "items", - "status" - ], - "type": "object" - }, - "TurnError": { - "properties": { - "additionalDetails": { - "default": null, - "type": [ - "string", - "null" - ] - }, - "codexErrorInfo": { - "anyOf": [ - { - "$ref": "#/definitions/CodexErrorInfo" - }, - { - "type": "null" - } - ] - }, - "message": { - "type": "string" - }, - "misalignment": { - "anyOf": [ - { - "$ref": "#/definitions/MisalignmentErrorDetails" - }, - { - "type": "null" - } - ], - "default": null, - "description": "Optional public explanation and continuation instruction for a misalignment block." - } - }, - "required": [ - "message" - ], - "type": "object" - }, - "TurnItemsView": { - "oneOf": [ - { - "description": "`items` was not loaded for this turn. The field is intentionally empty.", - "enum": [ - "notLoaded" - ], - "type": "string" - }, - { - "description": "`items` contains only a display summary for this turn.", - "enum": [ - "summary" - ], - "type": "string" - }, - { - "description": "`items` contains every ThreadItem available from persisted app-server history for this turn.", - "enum": [ - "full" - ], - "type": "string" - } - ] - }, - "TurnStatus": { - "enum": [ - "completed", - "interrupted", - "failed", - "inProgress" - ], - "type": "string" - }, - "UserInput": { - "oneOf": [ - { - "properties": { - "text": { - "type": "string" - }, - "text_elements": { - "default": [], - "description": "UI-defined spans within `text` used to render or persist special elements.", - "items": { - "$ref": "#/definitions/TextElement" - }, - "type": "array" - }, - "type": { - "enum": [ - "text" - ], - "title": "TextUserInputType", - "type": "string" - } - }, - "required": [ - "text", - "type" - ], - "title": "TextUserInput", - "type": "object" - }, - { - "properties": { - "detail": { - "anyOf": [ - { - "$ref": "#/definitions/ImageDetail" - }, - { - "type": "null" - } - ], - "default": null - }, - "type": { - "enum": [ - "image" - ], - "title": "ImageUserInputType", - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "type", - "url" - ], - "title": "ImageUserInput", - "type": "object" - }, - { - "properties": { - "detail": { - "anyOf": [ - { - "$ref": "#/definitions/ImageDetail" - }, - { - "type": "null" - } - ], - "default": null - }, - "path": { - "type": "string" - }, - "type": { - "enum": [ - "localImage" - ], - "title": "LocalImageUserInputType", - "type": "string" - } - }, - "required": [ - "path", - "type" - ], - "title": "LocalImageUserInput", - "type": "object" - }, - { - "properties": { - "type": { - "enum": [ - "audio" - ], - "title": "AudioUserInputType", - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "type", - "url" - ], - "title": "AudioUserInput", - "type": "object" - }, - { - "properties": { - "path": { - "type": "string" - }, - "type": { - "enum": [ - "localAudio" - ], - "title": "LocalAudioUserInputType", - "type": "string" - } - }, - "required": [ - "path", - "type" - ], - "title": "LocalAudioUserInput", - "type": "object" - }, - { - "properties": { - "name": { - "type": "string" - }, - "path": { - "type": "string" - }, - "type": { - "enum": [ - "skill" - ], - "title": "SkillUserInputType", - "type": "string" - } - }, - "required": [ - "name", - "path", - "type" - ], - "title": "SkillUserInput", - "type": "object" - }, - { - "properties": { - "name": { - "type": "string" - }, - "path": { - "type": "string" - }, - "type": { - "enum": [ - "mention" - ], - "title": "MentionUserInputType", - "type": "string" - } - }, - "required": [ - "name", - "path", - "type" - ], - "title": "MentionUserInput", - "type": "object" - } - ] - }, - "WebSearchAction": { - "oneOf": [ - { - "properties": { - "queries": { - "items": { - "type": "string" - }, - "type": [ - "array", - "null" - ] - }, - "query": { - "type": [ - "string", - "null" - ] - }, - "type": { - "enum": [ - "search" - ], - "title": "SearchWebSearchActionType", - "type": "string" - } - }, - "required": [ - "type" - ], - "title": "SearchWebSearchAction", - "type": "object" - }, - { - "properties": { - "type": { - "enum": [ - "openPage" - ], - "title": "OpenPageWebSearchActionType", - "type": "string" - }, - "url": { - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "type" - ], - "title": "OpenPageWebSearchAction", - "type": "object" - }, - { - "properties": { - "pattern": { - "type": [ - "string", - "null" - ] - }, - "type": { - "enum": [ - "findInPage" - ], - "title": "FindInPageWebSearchActionType", - "type": "string" - }, - "url": { - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "type" - ], - "title": "FindInPageWebSearchAction", - "type": "object" - }, - { - "properties": { - "type": { - "enum": [ - "other" - ], - "title": "OtherWebSearchActionType", - "type": "string" - } - }, - "required": [ - "type" - ], - "title": "OtherWebSearchAction", - "type": "object" - } - ] - } - }, - "properties": { - "thread": { - "allOf": [ - { - "$ref": "#/definitions/Thread" - } - ], - "description": "The updated thread after applying the rollback, with `turns` populated.\n\nThe ThreadItems stored in each Turn are lossy since we explicitly do not persist all agent interactions, such as command executions. This is the same behavior as `thread/resume`." - } - }, - "required": [ - "thread" - ], - "title": "ThreadRollbackResponse", - "type": "object" -} \ No newline at end of file diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadStartResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadStartResponse.json index a39db2c15d..3f193b0de8 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadStartResponse.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadStartResponse.json @@ -1456,7 +1456,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadStartedNotification.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadStartedNotification.json index bcfd63f923..e7eb265dcb 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadStartedNotification.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadStartedNotification.json @@ -1247,7 +1247,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/json/v2/ThreadUnarchiveResponse.json b/codex-rs/app-server-protocol/schema/json/v2/ThreadUnarchiveResponse.json index 2ed8f65ebe..7c0f053e20 100644 --- a/codex-rs/app-server-protocol/schema/json/v2/ThreadUnarchiveResponse.json +++ b/codex-rs/app-server-protocol/schema/json/v2/ThreadUnarchiveResponse.json @@ -1247,7 +1247,7 @@ "description": "Optional analytics source classification for this thread." }, "turns": { - "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", + "description": "Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/Turn" }, diff --git a/codex-rs/app-server-protocol/schema/precomputed/app-server-exports-experimental.json.zst b/codex-rs/app-server-protocol/schema/precomputed/app-server-exports-experimental.json.zst index 88c9c28a763afebccaa3a395337d67dbdf673d16..8a4f90d7eff99f355e7af430ae0296def4479739 100644 GIT binary patch literal 156251 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 literal 156708 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%0Dq$MV1dPIX%en?#}~iFu^$n@(^m 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 diff --git a/codex-rs/app-server-protocol/schema/precomputed/app-server-exports-stable.json.zst b/codex-rs/app-server-protocol/schema/precomputed/app-server-exports-stable.json.zst index 416d36cff557fd7128ad423d101deb8858c132b6..0e73285dac369af0630683304df295a38b21fd78 100644 GIT binary patch literal 150043 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

+Hm{LCk~`4BcF~cq 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�JwqyF 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]xWy9FHx|-~HjUuSLnjj1li%JJ_g{J3$a_7m^Azi? z#VVo=&4!W1Fp=vxy&wbr>9C%+j-AdZzpEoFIVY9c2K1E8iOzw3iL5!X2Eh)=ji z8n%%?Yg}HBxS^OnOLRd`3CfvBSV^Tru(}4GT=ZH z8Ht}x(_qIQBa%GPyf!y8<_42nXB@ipMVY2EKIS*;&z=1MXZ2M7ghw;uTMRW>&N%+` z#xTekciztW*YE>GRQTT!h7NoblzdOiG%&i`qv&go!o?zjc+KC_W2$2`i!(!iITl_(9I2gX1+^2l;Sf_u339?wl|mUT zk2`+Jecm^7qG#rW>cU{6Jb{3VGLMHAW77zdK@ zQ7?bFP&xA6piV0SgbvvV>ET*}kv%wv5J$H}m_31sGH&GbDFmB*P^05FGSPJWW3xt1FA~jN!SSN}SzTI-8M2QL!MmW`o5^fPCqO{f@qJ%qj?4iWv zyzn|7LKeqvC~*~PViaSXQB5eZr<;RA<=y`eN|YXyI1r5y#w#e%Q&2)PWd1_vxj>1n zJV65tQJAaX|38WI%WL)q5RP4F|7E?;5}@=Kn82<<-IYTTMVR`@U7BmbP&gpnv(2-)%d zBGHS)QSH9?SB_98^@5RRL!)Aggyl4hF6I`>MRY%aPm9qr{L%$xNFbGzXcO6>4?)T8 zdzG96ekNzQ*y{3eDU-63u~V^E0%4q z6(%RsLo6KF#l+pprKCG?f6&JZ(GWK5`PiUhyo2PsVMrtI_rJnf9P`k>;ZGn_iLcNI zhEUkEJ{R_CPE1BtcZFsFIUc)0ZL1I4SM4%V@QW#QrBxxBQ4Q^uPoNS0;7SPg-B>#h zSByd43U#LS&2(H0{Wx)Z4|y9^AF3U^~G zos%szgLsTL@Yjb5&-IDS=99Px6`HWH30xZh7;|-SfgkK41Sc59IfNJ?gh)Qszi6hc zl(TxDit1k)C)s zH;+g#P+m?BI4C-a7C)hf&5uiPjLW`YRI+hX1|u8VHc(!?sPO}3d|M6BK$0h#X9q*Q zid4@Anr~80b#G)E$_Z`+iI4CWx4MrNJI{$F?birK<1yNq2qUWc1`Qcum`Q9C!$`@H zXiQ~^)1F8eeiinI1eY*YN`Rp5CJYNaV0r9KlhMHE+l)~di`O$qVcbv*=adWs0KTU% zB0QVOnp7B~sW7~~gpXAi`LZWw;MrXfG|!lqfp#(V_fgcO8b+gTk2kBZmzeGP!)UIB zFF=faH&-uR9P7DaXb%Nk;B%RR2m7JiOIp^I}~w9G0zq#Q?GY2^NEp ziUyp3c7;xZSeyA&DgIETiNf3FFcPsnp=3sKF)Wi19P_y+U?LAvmPnY7Es&ivZF7o2@Ml6AlsKCE`u=y5{k6AcUZ-8wPC1oJQFDbu(z-nLxS>f>g(^RMlX7$ zY+=TLF=PDC!LI}7?qP9x_LX_g81*`1ASANg+zgl6J#p`DFwz&vAB|DUMrm{!gBvWY zZ$L{P`vU7K!!<@^OLi0Zb{*>=uBSIfk}2UEL-W^0<}>lka6bpw*x9tQ@^bXuw)?vwvaKJS58U_);OK97WCPdbHcJEW6o*ww3oCR%q|=iNpYb;r#$LoPB3ky@r3o-Iez(C z#F^4bxN{Wby*AoM6cKD~>=-`R(h7L-9MAW#V4X+^AYwhwnfzeTV$#bGnB1DS-MQ@Ax!%tKUp}lFn(8HBN{6JU&<(x!-pZHkc4+Z3tEO|ehi6s_S+5um*($}PVsav3;9Ho_^wcQ{2*ic`ebI7Lv9 zQ{*){MPw|eNL%Id;P+z}qS2(w(Br z)H}t;z*96gJjIX3Q zVjMRr!WKtGAUY}nc1OiDdQ`-#kBVggsc3AFifs(3XjUQ>Ss1Bk)*}_MNK#Q-B^3!_ zQc>I{6&ZO_(X>!1`jAr5y;CZNQl+A_Rx0*^r6OswRP?c>B3`*vl;Nc!Xunj*siGvNSlhxx~WJ9oQiUdQxV3TipHf=aU*sr@_MIY z8F?zgR!_wsd@9ntPemVpDv}mZ#Xba8 z2=1ebh(xL=TS*mxP^zfcN)^kvRFPOr72D8M5yqP;g6UKdx1K5r0acN=p(-Xasv@+c zD&}FTqHRxA6q2fq0}iq4%?5lO9zrnObE4_p4bc7YC^Unc85O4$*63`@ZU>pdF z#Nhn_6M(>gfIt9&;2?k?z#x!dAQ%X21OkB|fFOWC5=an0FcAzWL#i-en&#lRW|{sV ziM3>zZHPC{QOa26!G#H;s@xiTVvhk|cr*ECz`A#){=mvIRC#k&-l)FU+LQEuT;51q z2lcT5^Ck=PhMb6tF>j2_8yvUyFu4=GqOf^089}@-P!%ZNoHzWvaw6DrQ>Ciw-6usqsSOWn69;kg zf0Kjw#>)RVqT2H2Ak&|}Vv*&?^}DrcN%vpXhs=NZo=Mk6mLy7xr}Y@?0dO6!O&jiJ zy*9JGHezb+A77gv3H{1#N_^J>j#OC8nTk>;vF37;aI=O7iNOM ziU5s+AFzfa$bo10)!QJR73^&iqpz>NMgH3xdu<*iCcPL;Gn~O#%If9CJJG?^->fkZ zvt*V_+AS&nZ4j4dFhv89TT|x_rjjWcxS^At+OXUd+{hHo1aH*MP=lKg65Rw;{8Fc% z!p#V4w&iXd$-APk{OJ4)WkTH4k349LF-tK}wkX!%TK(5?Dv!WdRjoW_&M5f!5NqT; zZ@`IZiOYekMl3+Ff!P~k_JdA!AlVu{#7S;|-O(+%F%TROm`$a4&utQq`Gl6s$AIZN zzqFogI0cOQ6K>Qca4>0bU)-w_Z@eE)_$c0JiZ{5XjUTgkqb=Sv^}v~%?eBleK)cz_ z0?qN}%}|xdK;Crc530zU?~qt_m%)mdubO>K7|NS96U8SgZ`kVs4Cr;mNj%V%~H7EV}jtElv*&vQ7nmmE?#U)Knge!$M3oniz z>%$q^+(EfVUb5UlTO)6aqK$TnHuVA=foy+Wv`LI}6Y_d-bLXTDSO(aSjWiFJC0 z3Q?PL!NSE$kTALH-Qu`4PZ!N&OP!-Hg|fQ5JT7fmp-Wpn*2t<2Z`Fo8NBCE5OjvEy z5;W<^Q5AEgDt5?K`1OoJOn2i?(frk>0&BDVqJCJLE3r0lE7Xs*c}dtX#@5@*+9)S% z0w3`+C$u&_S{pWs=xJ?ylhR-lC$={Ic@l$%7Qyk+f@eg#HUxKV?Ad{f9XIpZ)Izfv zcvzQX)(X77!!|S@wqa~&17|u+u?-_lD8MtOA`=gQSG?KAxJ`(zJg@^j%-ImjomdP| zX_49{woVw;Hu;YvSZ%Y+2XQz9Vi2)yY|~fvx03FixM9(N_g1zoC}HnbN?_v#?hc__ zX$7-yaJy2o(QJ1zRY8zuliV2J%1k9U|B{-|F2S(L4Nbe=TxYF~*Hvw97yA!_Xl~$w zC5Gnafv-uR@K7`?WT2&4jpqg|&kap(X-becc?r0__#QS}|H#dAyV>6^GhIUD;5IPm zuB+(|n$Gw*vbshP)l9_}JBGZdG=suSP+;?W5}=G8sayc;raEQ_KHU?okqdXFKBdJk zAuk=R66(S|m@J)>FFj$xPl;Q}8#5&UN{1>gM>#i^2nM>y; z{!Qh?fX-eHr$Sp;2v;I>l5o$M`!I&l8)P(7H;8F~_)}7~fI8$r!t^DrkTJM?x)Q2HEi^Y*^LUxo4CV#87hdjfg9%HrKUbPFGEuZHKp~)r?uD`KS2xF5052khT4X7DHM>)}zP#`8= zOmHZJp~GaawzKB7Kk$>`NRJ2ByA0>71rptyX;N#N z$_X}{G+5Da7BEI-Yb+u;#o@e?8h8Q%djKn<{$G(HJ<-~ZGtH83l*82yCtLXOxu@7_ zE$_Vsgv^7L>NWI<_1XQO z5}bVD(cy9ebx3|_3yovneL6;RUgC@yO8eXQCQhD33t6b+O#!{c0_llE z1(kt^9295!6P6IgfsTYz6ld|_&NWxg+O)LbRL-=zve+>)!jfBq2+q)20D+1r`E|LO`Mxi~ixSqF4?`BTNaIMxP?n}q9$#2>|CU!2z%g@AE9EBtr;ZkULz zwG`^#(!RtvR^b2*P_6T8j3fV?eBzLCT;l_HGR}?B-({T9!`aL@la$jLN7TpfGY(bW zb-<%>x@K29jWd4Um>P!~?i;1D#!2@*4OTOXWSSxZ@7g&32XNrVu^_OW-8imIEsJlQ zi@d z;Jet`-ErCwGYZ>a`^uW}I2dR+=5byrv82aA*#KaV6E+U>9_MRQYlwUtD&XQmeH`|9 z4!WpkXkjFT18{eE{Sv)8J4{Rw_TG`%V9x)+-%CUf2IL@%q8r0OthQ(zXvTxB1X&1j zMzK-0&ERq7je_m1{(7WKMWexlORplBS;*n8@$lk#^^e^dhJeShvsL$yWBGW^?L>7U zM&tksK>`;$M;8sE$jOz?6geJ17>mCvayotH&uwI;WP@1P-Kha4a7{ih@cjW@Bj<>U z{B7iTN1OcflWZ9uA$fvF+5qnR_Ko5oIhBwc$f6C&5hY+9_yb9fTlt6a?<{zW6_74E z$eBN`KFNtG$g>hsa@ddp%AcL9mz?_OgXbHQ zW4bWjyzuOaTh7S$ZdF<2nCMN^Y%hA?rg}OE9G4 zJ8~#$Z70VA1z7gu$yqz%aev_@o`A2gai)E+PtFpI&mb5m=(w_E|92>7^V2l7jWh$1 zO0#5;iDG^Q|h!Bgg};o!Wl z5@6xDa(chef|R%*zH&^7UxVdLUk*JiXJ<6DC7LY921;LMIrl!2Ur(Urg#X5*<*aw0 z$R2*GIxs703>_h-0C^p?)GBg0FoUIkE~orcbJXRmeuTxdT@K<;q$whf_2|L9oYnJL zz8r$FIOms>pM=W4oUda(r}lr*QP6@p0$&?_h_8h?w@eD0!<;tO%$|5Y8WeM?V-{4* z0qfDjCbTk1EVWSsWKQDwjkW;P>7U(Mxc&aIzFu*?}ARr(RP~boy5DWqc0t^BO z1UUf&1c5*hNFoRz5C|%Q!K4Tk)Px3V z01a1bmRaMrK$LJDY?*63$Dy>yl|JXmd}K-fW##_?N^6(PG{;E)q@ub{FUGDmfzZUY zPg4HB27Z5)Pbz478PDx@PpYElbWxRQLTF;_l3hW3Ae9s~z#uKHl1=+Hs1J9bd{UN# z11B2_d7F9npqd`6_sCO+z@v}UF%yRg-hs_c9;0JsRo&q+7k(4*n90z_^_VHba6m4N zuUQ%V7w$>qT0Hmhm?~{G+hx=y^z#W!#*2i;to)2b1eqDc!#y)IRSo5vM(Rd{zSfvi zpNR|K*s&0`jpG|<26gT`NL2<1Fl$t#?3@R*W_U5CnE(9Ml85#btbi#Ec2KIOg?PJBQ|3r8GBq}x7g_8=cj^0j=TKE1en>(FfpPnXEU3F zw6a2*S+aLWn<*@y`KHZqQ>VdSZRWE!v-(F<_-r#w+YGtpObpa*1{{>gy|YxjB-_1aF7E2`-*EfUu5y?l)r?@E!#YZeW9?(K0FTFR3 z>`srU4hNAQkP_c8E^@hqoY)&yMYWHEs%7E=M@9!sD~*7*O|;?#-2>9A4UEJzG_d} znfjmdWQVXkS#pM$@bZ}#DRAF-;1Gd9P5SKW_@D6_ad!p=wR5Rip@dM&(uv>R8N@ZK z-~D?S7VwO^4zqXg3^F@Kpa&TWq$2SQp%zjKjA!CsesmUVgdst-SjaP-vsj|M8Huta z_M31q&pZ>Z&_COR6T|XDg(-neGACEy&!#9CJ%gBO0DXKt#n;Lu+aeVayn3dO4YQuv z@V>b93=OBQX0d1D{^QJ)qbJAGp1}vWQOl@|wrB7l#`jD_t6C4N3Jf3%yr(OL#A@vy z*NL2t3g)({r;0e#fk70XaZ0;$O118^BT@6*E+jIax#%xo+K<;6ID;@Vz#ZMk=`#rR znePMI>N7dQSs04^UxoVU$up*E=zYfiE-i?qd0toomY<0woCMKJLSManvC?wQ!}}Q? zU7s^q?ssBtUq0mP%KSk((kK7MFbE(#e-LruP zJK0#Q#ai|go>4PAOcQ8?8i3wjsaer4p`$B8U7DFSH2yF_js7iO2pEZ;sa7#gSBS|Xo;;3lf@z}4Be ztz_cNPFt|id`;yqZzS{eLZvx0FKGl9RjU9uKQ!wyr->9NN+iT`*MYe1!7H=Ok3JJb zODnn}5;gn3(EVL8Q5?KPvjQIS)kIVBtsK4t{-6pO%``=ghbRmEsA!N5$txHI#gB{$ z&b6Y^8dp%B0jXzR>ew1b5fCeUx)lP7>x_Qa%Kl+NdcL6k6mS%58%G;*;s!oqrMWCP zK8)sDbr~eypOT+D93*nz$d`R)H+)cT7Y;NTU_HUwXcDYQOU$c~5Bx0xLr4vcB_MtP ziKDR>NAv8veyUuKCPLG-50MF1iVKG;;|#{%E$3 zKyqNIFGO8=732>Td#~U>b?gFtG(;DJ=ng-clOK)S5#x^rM<(e%ni{i)ARvuG;~7FA z&7(jXS|SEy?n+n~aFFI}Ndro4UIS|2SJOh8CkzGni1Q7&D;%e=t>H8B(zkU1%oge^ z21yl?Mhq5l!ga%5MAwxx&GrY2qrm9~GVUpXme%~8fzRk3$AEd^-W^XCKH~>UgMI;6 z@R;vjiRZb1#}h?6NFX~-cNPrlq0_}co=t0r3JwlnztpA@;9{2MX_h9()oN>68iHCH za}6eKX-*)RfJ<}w(miu&4t^s#46O)at!aF zd<6w3x^_>6CYVd3FEo+-JzI~{@DwUz!)36XM!B4Z1X41mNy)X-IZau^M6AzgvVQ=} zt{u{8xCZRdMneJ&`X0?>DwOn&`S3~Mizq}9&q6ML2(%+uQKrE?4bwdh!Fw8-lM?te zP}bk;6(D2Mg}u^s4X~ehJKd;Hb1#OzA{Bw<>z(fR&M%?sGjut_(TON>m$OO*)NC@x zBT$2);5|W8ssfN5jc(c`%LZaXs9E_d5<<<1NkFG>rS&aUnko_8Q8SLBCQvwbikjForp70iY}Dw{VlqDB z=de_kix0ok1n@;c@k5Z-N@|p)SR3^@skxyrHwFZy#to(B@x(7FIL+-3^^A#|6J1Nq zJgzinH)1KO`K88Dd{h{p24rPIu9z_5)lE&+a%yHz>k4VE?9J?T5YNA)=Fd+{%Ti4s z<7H@=YHl5~GS#qA;E-tqP#J!pJ+23=IH79LwCJqxH|uW9fpgEMYMvOL>N#%{bF(s! z?}mP1BjcwQ>tEm-B?gN?j^x=!%me1rY|b{glIf*nX>VI@MBfHFz^mcsZ$I&(*wI zsa02#ugWnD_q?m&eOJ?;;2J5frXQM1B6J#yK>!;-!__&CFOox$ zfi+AA)=Y(1SUjFkzJZE0Gh}b=Vhu=GF`&Mna>kld;s4>mJZu75-{C<`4PNT8kGQO9 z`<+)UG-gd9vqoxsO3fN}se^dNoHcEXqRyIl|Ffg-TW@7mi>Mc~$gM+|+x9t8L>8?H z%@@;mwr?lSmG3ynuG4}!^>EGq0QyHP5&vhEo#G^`ol^`M z#^i`u01R?2^m9#Y>o6#E%^tc2HM1v+u7O6^z`od(aZh-dXx~|2XOz z#82DKt98vak8jTD?bCi`*C2eUH@LKGXxJld*MuI&hPx(voRaPuq z(0rdbM1Z0Yd9ZCzG=B@4-KaClIJxNv##byubF#c z!e5V7o<2$d_8J|HA$v_#iw`a`FsL+TUjMk)L`KwVkOV9B`-k`%W%3x&@-<)|7}4iz zz%w&pu=<({bNcIR7?t9pOo5M1F4Tjlhwn}~(>Y$?7MomGe$Fv=cOnI_%Q-%OY)%SW zIm^EaatYat9j9_Ifq(?tgMlI&Eu#Ax0!>TBK>jM)GJNV=#L2Fk7TM}|eMGe6b<{nZ$tqC{<(l^b@u)|Al?>4Zd& z~aqY3i@=N*e^5Wx*MC zG$w0`f>VpOLAScaH-kNGnqUKv0!{PNX8v4Z;S5K&Wgtz^t(yNS{L!e5PxCl>3naBM zjg8Jiy_**XDTHon)9n|y6Lwc{kd5k5bs(@dFj$+aur_>Hn}>l^+gO_p#K-o5z(?PJ z8?OMhcWab)r!Q%9l;O~mZf&Mwv>yP|ePu5yflQy5+Am`ND*;SeqG>eWxAh1^t zY?Gw`e%hooo6xP+65|^C!r0k*$a>c^D~|>j7f5YVMDm|OdCd)~%@GyBu>}fqw$V26 z&Y}mBoB)?-8|jQ6(u#zRsVCQ~2EopR@Kl)}o(P*Ri#CF_&CT1*vjUOKYnyyFR1os3 zc}9;ml1i~w|BKmHG1IY&MVN%5N* zL~F$d#!f6YAN^A-cSt{^Gg$*~yk;!i3|hE(Kr1sCZdMF8p^twkCtr)Q%7bV1aOKC& z+i`Hvz<9rg%z5G-+hDUtohfb{6*pdh5u*nKU+Q6JYj*iQm=GtFw2U$;7({7r8;u&g zK5S6XMGrL=ltDoTZ$rAEU>tZKuY!VSZeb(91O+_@%ty9}px{?2cE}>ESPIZUK^7hP z$gn`c%nAC4M*;;8SQ*Lz1sQLe^9u?nSmSm;x@YnU`ht(hnDR&zc(9ljZEwpDaX4?? zRMe{`L4$S@k&sPEg0!3699mM|GV7ub2sITZxZR8%=2y$CHY*M%9xY?Rc{glulmYZJ z02pa$B!TDXAqc?;gJFsgLI_bt`w~bHI6{CRKnM^51VIR(1PDTKNT47jf{+l+VA9c& z4lhLo#haOWW75SKh0Nd)jluKN<5F*(BGHpazVdUDL$_%~IF3Lqfc^CL+RyfAZyC^k z6bd{DKah#Gf$cSI8P`!@83)5cN(ikm5Vic&g1}xR{F1-prRtm!f)o%GL6XF9SwftV zoZ%I?hzR~DsCyj zW#F{{vPFG>`zJ&>2yCF7$u0<46mC)ZRwmsN=++`otz<@fYd9$cRG>Q=gg=&n8A)v` z>Bs8DQikJX3TTr34N0=8*mu0jgO>V{YHLw!6(i>D>QSb4EPx1&$Cp|fOjXO9Q{b^i zWY9}e1E8pO-0TRGWFcy)mG=iAlBGi_yfC3J>1y;un`9VdRF^O5&>X?hQRNqPgF8uK zI}Rb^T4J80QGh{OD@*Y9Jn-fTF_hHOc0+x8C`k*Vq-9K*eyX!lJ8n4dJXzsLv9nGn zng@q&5WPsO+-VHirNp$Bz|b z)-XtwM075dwYRb_mphVbm;wP5qg1o0`U)gX0)pie>$Bw;$Hl6v>86?*5?K>7EfObz zZaow0wjC%a$HeGML#B?%#37!Y(*ablIy(o8`K@&lzYSd~qZ2%5+K{+nNOS6f&f~h1 zdSI_k(wj%$NsK$k&Z+tHNRUxkrp~W!<4G(7>PeN9o14i=%}mzWFvV8r-8eBlNo;2? z?=D6X){}ZnexwTgR6TB_hG#yBBX2%w1ju)UKH_VDZtTD@xK-hr&kFWqpDjj4KgqJU z|K_C%gqHRv6}}I!US8n%;2`EMP&!iBD9qiJ3Se?wRs|(=dt{mgr6yb6AmdZRf+C`3 z^g+q?CO*=WrKsB&oh)7@ltlgWHlcK=$<*q9h54*dx@6WI=zlvkD1CRbu#Nh~a-;=y z2^pEbJCx{u>EA<%>o1?gxD^7d{~JCMQz9cu;K9*B7P(B6K!A2tpC}=qC~ZsK6U3`1 z33!2nj0=WPfLx3aLgwHkezY6<5usy%pa;ofqa@1dAQ76~lIoK3Mk$iX$p9lLkJ{-$ z>Paa~@c!4{QsAsiDbXdyX<%-W(;)CLr@_K|PJ^>WIt^N-It>;Z>@;{n+iCEEywhL+ zg{Q$wM4kpQbe;z9jd~hPnf5fe%Njln&XD;um?QRS&@=MW;5Ok;gW={s4N68p4UV1y zHCQ$XYEVWN)Zm9WsKHMap$2(Fp$4zdg&GVN4K=th9cnO>K-Az38c~CEF;Rn;B}EMe z3yT^Ymlrh{K{9Ia{?w>J-r%UgBeSChQ^rRP?oE&y3^gJ(c$JRSAY_!(;DKsVgK-9> z1{Z8f4ThDK8ayajY7j46YVb0Bslg-?Q-kADrUvr^O$}a>H8ltkH#K-Z;?!Vt(5b=M zxKo39qNfJ0OrIJg4WJr4JA-O4X$;lipd_lnEMZiGH|0?c5=BxCUYANWm@b%Va7Z@Q zV1Rh4!SfNS1`$H429L<88VnFsHMl0NYA{S-)!?<5RfE*9RfE6(kfMJ#$6lov)a0LW zR;HM;dZ?F1Ee-WK#Vk&U7RtjGr1??2e7Xr$c05-|rD7yV;)V`33BOMbcL77+_X)z- zjH?)woHR|oOtDT*$~5x_#5Nc#CPY}wNntSx!(x6M79&F}W+ky0+2Mi3V(ttSqW2eI z?W{Mjm?S_W%B4h8&0`i5z74be1M|w&*CLA=g+5x0IJ#&QoB8NM)?!Yb9KiqKI0j2K zcXbSve#Xt5!Qskivrugnb4-w)i@65?L5G?d!7od@k=Nj6Y#_#q0fleGx|&V1jTv6{ zFV63M3jbd2hWcVcGL8FUW*@Q{RYZ#EKI@bA@PqMw4tYPA&|F~vG8m(eejimvByV9% z$aDoYjIsA^>tT%D=>QBXVvM*A!jl+-p~KKD(@u~afrz@11|k~;_Thl~jp_Lt(+JM| zTjVK!6p7%NwDWf|C9x1}!eD-rNs_#$h&-mbpeSjV$J7lTfXrhs&0~IE2Q!k{l7a#> zIRF@GX?B7u_#zMlmJlQi0YbnKAOuW=06_>40t7?|6cRyj24}d$j57v(A6iPrwUE6J zwKyci48!*)<+0mt%u7t73V+FR~xv1~7nsHY8Hx zx#`;B58?BA0z`j^UqmF~*4Jea{-HYlp*c6@{6mM0*|dM?j^}l|QpJq{I|R(FOGXnk zYWz9$3y4B$q55Dv13Ms6n%z;%J3GC}8O2~R;C&#<7WLFlQuWEx>K57&!)EXt*cVL5 z^OmCVy1g`m=zIoIyOJ+`{J$DR3~IPXnHz(CHX{!rCNR1H#h;4R*?AK}6rI8IWo?8= zW*J*Zh;CmLDIxkRA?j=i(J;3k*fSx*|If)$QHb#Wa+?$36a%_-g~&eOEDqG?nA4t0 zzlCTaJkQ`?h_Vif2|FI1M8uH|!mcM6(c({*(V|e0GiOjl7= zl2xutRSb!WJEjeDoN)O?Wjpo66y+|da9Hn0A`;n34KoLg$|cdaO}M)H%?(LYQa?ta z5Fu1ebacj|V^caWM`%nYN(7}35MtO=B0F1FXW&;RicJ&@9n0UPKZu16;m0P5VHAa~ zHlGWS68#ersBo#-0;qX~o_c~akp(V-m3vHL(TSe#?>~pYHc-On$Uf1Cm*~08|Nf8W zxkUkr4#6bLNnmb80Kpf}#oHIh6{r*Dm8Y%D{n;qu3m}MCqiGVOW2{F}W2BX;eiXH@ z`G`*SM~VciFlc6g`J2ne+!Qg!I1I1p zt{naEIluG3EJhTjFLMOGZgc7PY~ip#T<;q$sL0NAEFz(zhJC&0AS%MU^uhoj6RG-V zP8vsxk48n=MnxY-MdGvBLtngRz)S~tzI4I`hQ{+HYgRK8Qw0}XR8_#rz!>!50T|p^ zhaH1IV2PVhm6!;u5WaqGs3@nKgyjo16*~R1Lg&2#s+ou@NQ6~%aRnk=t?uDjUx32E3qG$1 zBw!<7muXF-Ox0Z;PP?!RL^T7l%kEBSmKI2!Q-DK@KoBi*URt6oT67>_8jhC(QpNr| z!;#}-h(U#`4l10EBO!H z4LJT6?YHNpmwWM{veNqj21ZL{@!ceMYZ8c}^ls#{DS3(0w(HX9o?!^+(HY?u)H%6eR+T4=tM^D$r14K|9FY+=%j9dm?fj5NUuBy+L(-* zvt8enREBXIFtAi(qkL)JxMSNXl})qrE>Ky@$hM24q|8qtSR{)K- zc$bGB#wdlwi?Wyr>QSb1BhTpK0~~hC9*sdiVVC>~2AoVoafku#Jv>nk99Zp6s zz<+{k?<|TUjjJ6lQPd1fx(JYQwrRmMS|Zeebout0fI{==5-ti>n{!{I<^lDp)&IJR zldFbQVx#s1sZ}cl5QLM0SbEAv7XWNk}hy^xL zW3#zYg{LBFwU1P2dZZ)L=tb5_Dn*p@=Wq72Q>)T8|8VXpjLYX zY05y2$MucUjS8rhaq-&)nEq+d{V3p0;2uXY*Lr5w8uG} z#^%mcw^P9o?hul2AW}qhG{c?ew)(4N4u5vm5H5WK>i--Vp(@3CY&z zX*QuDvIW&wnfbER<$q5d<;a7B1&Z}i!-kPOu>2dXx{_}Z24fB*4F*k z5~aot1*S$f_NZxOsXao)W1vK%OeBy>&35a@?zSWZ=9z{EUzn3f_g`1P7Uf^#CDI!| zJF_NhB88dEnO*md3_JiJF;Znsf?%lf=Q0S4U~ot@3W6YqVTfaW5)vd!hKyOvLokM3w#3JuE{O!2 z57ZQRQ&R)FsMaXpaHs4DPF2P8wu+|H3BB8)Z4IXtStEn6Ip&Ca6j{gR)1Q44KvT&? zQz?I63~LGuvLS!1Pk0WLM8Cc8^nzyQ_~(}Ojy6tF7zVXkC#)I_8de; z6!UsSGX?o<>v+WT-AuuMoD7OD&{Jfv)MtT5)sq1V+$gN z>eI0;GOSL~_+K=Wa##uiB%2fsco2wulLAhlHS)7?pw_lp z)=rZbv?^IK(5UVFkgE%3nFi6w3*Hn`EpJI?#M&J#S;^go+Le=S-&yzBC9JPS=coI& zpo)yWH8)eNrr~$n1uL#dsTF{`{d{#pD0%ljj^xvoWvbf(L#~%mz3ez-PFbqwfOg{; zw0h*O#KP4>jI)bZ594mq(*limlKq2S~`bc$*zq zDtO}3*t$bTQJ0J&|J5!-F_Dv#1*7uL^V{SZK8J{mBH4wuPGf=(y(Sl4-3Ta!_40bS za9Jw3n<`zZ@5=>h^lizo@(q0UO>`NR{)Z-n-Xav#AJON-qB5>2Ie&xv?`w()*c8M< zlQe9K=hW@4$hsbJP5_3%47~5~iS0zbwwN25IDh+Y^TZ6@OwC%oiDaCjK|?!mA3%Z& zRKk&TW5zR{j%S>7c*2xtu&t$1V);cKp_SO4XUw2ykg>lcJ)@}WubI=Z^9yo4qtG|5 zP}Jl#SqXCoOpH3jH`+C98zdW^8}r zgB`%vxd%)$E}CX&|L;sL1*1vo6jkzd;t}#?Sf^~xI)$JJrX#OYgnykSw>1JYcYh3p#hl$_=%a6_(0 zXBU~4jh>Q^cnfPFPJk4EDoi0;RS96tv6<{C@3W_PW-|1{JtchZDa%JvKwkKi+gZAl zhxRgSK81dkF43oo%h9KVH#fvw7Z-EyAj21uJHAc`Yf ziqe5SS_Nd0OPCE~igNrWtt(jlr9tU`B-YS&7P*cBUlukBCfYSleDSb_Pq_%9a>0OT zy?rTYeN&6qjzrRe1YAJCB;ugXb_qUSWMT)^{7b1Z;65LzHgwYc5D( z(RB|1yNi?o4b6{&a`~Z)^^e_slJJcBrkPoiyc*;u9M1w~vJGe8!%}p;S@#(WyNkHQH^nc@;Q_nh#4RJF@mnFAn9$#GV@zILt8;jMZ|>xATryA{y2{b$u*F?iqFad zyZo?p-%Kc<{`s=_?aNZ@m7l*Xdp>pwHFQ#Nl_ z_Rb!7$sq0FeTJ*0hHz5tEa|YIneu3ghk;f{nDE6=Tz|NZ*IvJ(OtGAP`%cDFYO_;M zUxswzKhUO{EKt=fMWcKZ47{ag3`bBiA`Bw4Jn9&*49Kdv`F3lXx5#NkQfzfR`I01A zdQT-;wRHq}yF`VNMPMQ^DrUNJ*XF)WbwxhPhu%6srwMxdZ>`I;XXO2pHTk+=T}qMp zBYx?fCtv)Gjp%%;>Nz%&cWi_JikCgeM%W=6+3vG{WTR6Y6{g!J{zy`+%0}w9&pSk< z*9k9Uu(jM+JycWDYca}Yl3pu_Jsd>#(7dVb#!eck$l0Hrl;BKH_gSRkRvRSo94ORs zA&EPCxsXyVj108_OgR8xZ*X~SZ+0wlX>?_Cf;gz+XE-7d1QG}Y21L>%PGJxR8EzjE zKp+qZ1VM(tAwUoYAwZx62?2r-qzD0mAUJ}6h-b7@$Qc75%B}_H2uJ^coRzs z!No7(L;0araBA5^8|IcnJ5MqW@3YoSOLH&IV-G@834#I zP3`er58mDrhXGb|8`Kj-f=n^)t|st!7PQH;T-Y@nPV{=eK(VHofbTF+1|kiCnQzj)rSGhMJV^enAaj-5%8 zondSAbhLu_WYp=DXc?xFxa070g*RP6$_#q;BG*yU+D}uU8yYS%Tenfi%MAUQ&C=U7 zUSnoPxMq()Gc%Zbsn^5aw$wd~Uie|mq zRSCp7$D6|RPGR!isKlVF!bG`Lfw98)JPdUd_X-353bSKPR1Yo-lQ#>KsR*G&{GMw%46wD2MA1MV1Gi0MhX|8VobL69PM|dYj(uQyVCbLdh>#$d$1zBp1t$`40P~XT z<TPF zyI+8{aNUZ3A}cg$_kh1}gu1LeImBOBADRE-{G}+GvrU_+H@zsn)Xq6TGsXm(xgyWK zf@WNsA!ChGStl2(gR&~i5b@={sOP=}q!+*Li%2u0uy!!-i}S5P0=}B}@C%QSmPoXI z07gf1JIaaw-Ji4(^QGr%NOgR%d3=%n2p-56R*zs@#b02}PYn&`|4sg$73A)Sz$jfr za9*O4P}g>zlo?(E?KfhEi47>gA|UzC4=6uqFzhH7!(JG~UeF$vaO?#^_5!((BFkRn z&MtOYb;+}rlW3PAZYlZ#V7gB%;C$ct}=8G@g&YTgF!2GS4QYD!yel z=wYD<@aC{=MN?@U5n#e!oNrAkjl=PTiy0Sh!J)fkn;b~TBXAoJI9 z@xzM#0$d%XdxhU0CLlQIg7U_JZAD5(>sb_&VC-BC=&Wd(lLPqLTk#`{rdP=gYzqpi zZ_y04nKr|m>i~?lyQv=CJFiwS!h|EV4)zBB(#rg-@QXh4H=9-6uB-4x0ArX!W0-U< z7et29ziUbT7aAb4OLPVNrM`$x81(S2DE;rUS?>CVxRl6~o?niK7G+{x{!FVsz1UTq zSox)$y4|9*3>ElO~<7rzsXcaGV6>la>ZG?D8 zHaMi^WYLSr<_YYt0B<*RO*B|KbgooW&shWZgOhCRPeUYTT7cF)Y1*(&g>M(Xn=Ec>jgokb>l0cf2JTCauA#z|wo+?QcY=Tp# z7}6T2mEtoA$?luKeR&0>t)-Wzl)7RrY-@bCw)pyQyO8Zys6$>C%C3|bp&I0SOL=OJK|;)%e3eKMCae}oj}(R8hWDtb&HWw)c9R_WY|wRnAi9u> z7di*fHOMB`CFdVhQ^1>8vcPyj!Y0GbR4D)mZh@w_;U5xEAP9H}5{3XFKoEog ziy#O=LV%zI3PK|Y%YeqL;iNHz3_h7jG>rFYJT?s$H!|N-2qsRP&mE)nR4HsOwJ;<> zbfB#RUJAcKD@87%AogVzB?x9yy8>nGcU!ild_{n_^C%LwCTAb`njh${$8IuLuSViw z6wQ2^(;L&yP!*y1+01Kr+rdZ)WSbSCyBwn>VGP}^R+EvH%cSa58I(0Su9TZN40k!% zw^Do8ro4I~2*JUX@c@QFjJoE^z<~sTMw3=$j3Q81jt@vMQ-QlC-nkNJN|r{SwM-s! zDkur%|ADIyLhRS8K~k`(+sh9P#irc*^BMI}gD%l%$UDecDhsDVOo744Lthz=ej=oBbvRY2<-ZPR#ts+amy3b= za4k6Bs`Nb&;|y@zZErDWZRbD}ac4asHuk!BC2@#@mk&f0a=(vj#1V~h9A(9-<6A+7 z=4U{tQ0RTGnqO$t%C}y-(cqQJ%Be*LxW{Cql2oW1VA(fmtIf-!5sY-%uw4co#lSIu z^%-W(K`ESm;GUBRRJdlu&;nH9Xq6okKT9Vu@;IC-yx8%eOE1toM-IxOGbiHkILk4h zE!zh_saRA`yN3&lG*nA+kX&zYAbrd?psAUk@7cc%UMSyUTNf$NdXy}8(GduJ>&(%_ z7|CBe^71z&L8vA<;dDY3`kHVPNOyMlNqIk&HTW-w5W2T?uBE~0Ibd4lS}CyNOX|Y3 zy4!1JZ{B@PrsGUsvv!N)^l3(96u)F9Th{wKg0;Wbz_JJI{E_GX0rX~XDFg=!ACRas zPuxpA4g7I{{Bc{}xefm~pnu%4Rg@q9-@$!!Vu)1#YkkI!s&iD5QM_;jBjfp7l45+2 z1AvelUBkaC)&F6I1gJSj65ta=Wo$oV%r)eg-D2I|2M8koYJU%mkn$G36Ve|CE+V%Y z!(iV;?ol6bC~|ZL%D^cVKHXH`oiSBq^hEuIBtLZeSNu%*w-g3A5+pI^<8!(dQ z9RaBB^N#OeP7m%W55j)^mijl`cX5UZi%QO=!j?vG;ip}yu6qaW`I(o>dZ@r{fq5?# z^ODdmj6j6^mXbDd$Ktog%Wmu5uH^JqrhY8Bpa^E)CEFM}qIO(zS6#55 zstLJgrZXo3nyT`))8&a1K`7@uYi)k^e3PeWGuF+GteTv<37$=nnW%rmz9^qbELBhp zN#QtFx9#JXQ~Z%RVDCH7=H*!BbqPEOzgh^qAt+Wg9X5x-Ob5umq3upbyYBisKv=j` zBGTp#j==7~iQ@gK%hCN))4RkBNrHMBw!=`Zl3iQ$opvN-Qk{lAL!$Tna^L=itM+5i zAxDfy>CCqS;?zDUOaYG$J%n_qUyLcybyDyHi1c@?c3{&Xo1Y+{Ce$IA4MGP5*#Xg3 z#^fEO<$gLC!Zpf!+FNC`qX`^84MbGXBkpM1C#~^2sO09x;k2RS)bZFqvK|(_mLH1& zKH?}DB5P7FM`}|bL}K*ljZ(2~l#E7iZu08SlTwXytnp*(#H{X1V-qPupu>UfYVhGr z1q3hvFlB9UEK^~DFiMax z2#X*nVhMQaHXT~>oR;c7QNT+TSPUgFb>BNAn1Z3DDNcY;kP1!5#Zt_OW@VZEAYAyF zgLZStc&kEC#y|rXCPyhDqzAIf*4)lP5;zH-r?4+=W3~3$mDf)>odwwOO0Z37Bw`6R zp*K=o;O~Q$AP#qZxKLXHJIG4GAZmeis==x7Vm$INJLyKHPuR5`-#rHWK`304GRN)5 zx~KV`$n3r5zjmhUHK)-S?h$#-RWdm_dd->dk`W7i%@vC8T=WBMzJ$Va{nafpfDI@p zRzaJ8DzfT+p{8!66x~yTk%)?C4dHOpalv^YKBMOH4`1xJO~7J;PhQuUXxChMzUCtN z%A{j+Il}{&QzS=cad}6JE0^>!Fa=pR7rk5&D=DqVXZI@ECegzL{dQ!%g*sX2)_Pz9 zOulA+3CkqgKeGY%(9KF9(8JtUt$92Kj#wgq+NN*WAvsY{D-omFIX;yFPP^L^diau| zKV|bVC2n$4187Ydjs!ic50I6!5yE`X;roJok(N)1Js;nf`31QtY_AMdS%XnP?jkV0 zH_uQckTXjJe}qg}2IT0pu;KUoO9y936_2KX5`omhs&H!Penw+jQaCYID}z1 zb4nD8k#2EbQew}^Nuvp*Cq(#v@IyBu1t6(HAz1K(HQXukW;4tmOutttG(!S)H2_80 zmGG8EBS*h5LC@sDKshAQ2q=oxD7nI_@9ruJA+{e@c=n*=DDO^4!(p5Zmf}g&qtOM% zJ>yc6WcwqP_u&|3@q`bnO~~>6@N@)w<+5N$y)s{7rQp}gVT-a%qp zm3gvH>@Be(+S#dO@voS+5pqg8@;GBZLnXI&fI{D3umuV;9xgn?&^>=>Qgb~Q9+{|I zao2ES?jpK;>AV0?S=v?2f+f$+bSyy5!nBMWqs9pLP%Cgl3)}+NDdxX2xu}8Vq6YK6 zi}$&x2ZfKNOrZ+*`!4G9ffSsQRc>}!#0SXQU7InMbtHjGc(LY=NNMst8?2?8Sn(qu zTA$5&KdRvPe=|8#uqV0S3d0rNw-NwN2P_&q;i}Bv^pQ3nZhV1+Lv!j{duiAs+`i3^0_o(CsaC2_j5*v zF4rpryVqky3xBjUfV6@e+Wf_*Q>uBk64qx|oYqk8vH}ujoz^>$FlPRO*cirzb(-?F zWdG!-eqnCWvgEkF0CkBms1>JYSDez?34Q^!)~H%o_@a8j8)BFtlJ<;h;_1J~5q6bw6|m8e4qa6_Zkx;^yH&X1s>dg3f-1-*oUlx5>E@Uyq3lL? zq7=F}ilu}F-%4pT7>Dggqo?uD#tS>BHJ;|+#CI!F6IJ`5T58J*65Jf&bG{GiDNKzu z4ZPTc5P7DFrj!Y25YjB)W7FUon+nmr!z!rw*cv6)70^h3(ePCFSQQu&2ZLo-cHJ?e(@PtK z2WObJ@RhZfOdH}zH-ZyOE=}9fvkHXVY|uwMO`A3}T)s0$7Zw6}o=|9}64I5rX(7OA zs9GGf&|tP)vG)r`B&Ciu%%FnGC9|cbHKAM}p^5=&EF=H`fof;~AqatjV3=ga5Mm5t z>j4r#APAfxkPw6bAwUo;L4pt<2my%@AP9mZ2+C+mOJtJ{{EsKb6WY?ICc=k&lQ`<- z^j*X9%z~3zY&|gwkcwW&UoizasiHovO1Xm(QeVV2p{)WbmaTlf0tw25l1jcx^*KFF{Ml@EL4p) zHIvpJHKYhHcY*&%jnF}Qm+?hZh((Ucg!akn;gZIM;$j3ioFS=2vIhd8sb*AG^U^F= zWmt5mkFW|2h_$D{K|XwDq2bJ^3V0qpny=V1) z2L}00Z;|u+?HIz{+>@%bnU8VV+lC&oN9!0SbLN+!f1Qf&zCImWz<3u+!fg%80YSRT|02plm2z8ACmp>Dow1P1i#*2b9 z(aAo^mZA6^^qF7g)`xv4m!koGP@uIMLoIzG&Vk&LlQ`51n%K%=Byc+ zsQ~i+BWG-17C@=)su59^aL_9h3tE7eV_(AH9aVRslb*y9mHyv+Z2i9v_iQfIjFMLJ zAT}z%ub-AjpKc=OK@)w*NuzNjZH1H{I0%mhw`5algQF1NI5s#yfWvL38A$k+I53IX z4dD1YXd$<3IyVyjbAM8{lx_ZijK0C`kf**y4sAQP4ePYaQKp*4oaXvzKmZq1j%eW= z(G%q-BD^*8%**JFTyl@}F-I zGh7c+y5MqnATMk*oY^mraRK&71d+S15NF6BQWo#}AadhZ3JtUOq@$(}BQrcO97XQ9 zl8?8$HfsZIJtEO3H9C>ebXgOnZZIu5tPPQ&#*B3NsMSK^1jrvSCzS=>nrkXa9st?{ zNx?I=&MFOcT#*$U2r&X7!b^Ib6kOCAW4}QF14ub}4`tB=0%1!NEvgOioEEzpj1T|_ zb%2+s;13}PK|%mQ7=y?V0imW;2NFOKSVoXQ2mwMc5+P6sG=hjBfDwpAECU|08+A(f zkmp_AC14@uaDsuJZN|ND_9cxGny}stLifkeLbKuJKKuiRn~^0OXF*V7PapE}YyTIO z%!G5e5k@13h7|p&w2cnHSl$|s7P>Q+DGAm-C%Px#vD%Ze^Lb|tk3NRoz?edwB8*>gjU*woG?)ZlVkSK+FDWTfbSUIf3NTV_ z7}|=%I>>g`B$8RT?DkctBkf_6sJG2tV}b({BPR}2L$;=OH3y__u?9@u*H*LCVuu1@ z&=C2MwvAGh z%pX-Lt}Z0r0z-0&X-i|sE=AQ#p`b1`);Q9IKLv#~8uXbMR)r?%K|^jqO_7gWxDsiT zb0u8qii#)RGZ4E5=Z;5(Cm|{8>aUC@www*fY6lIOy=uablDb?k$5F*= zLzs}>RiJ4PGz$O-XG1fmmbyA*=uXpNK+GHpJtzjCcL6`Dz z>P!+2xo1VS@;o6<>bFK+o`z>?jIjfCkj)?``8Ci~S_{y&k`z*UVps)32r=o`uWf)) z+00bCq5=VXc8V4DM145+gvxRMwN-qcpjZ_jVWe)nG^NzabEzHfcZ`C4c$d7s3Rtlj zaSl|3Td+#v7M#xFtH1aGsm3pB>in{<(N?cHsc%Bfsc-79IHYQh>YFH$>YMuO zfJmk+tm>Pn>DO5;uui+EbR)A-Y8ItPYm&RgI|G`l!>*{FW3WUsC)PJnE!MYs;^OAG zR?(}G%vDs%;rFtUik*6bR2C%&#V5hK$bdq*E%&I*D+4FDIOu0Cflg*FYs#~SrVSjw zHs7ey9E1-5D06jfL1%!IsPKgYAqc?;gpvvwBP2#iJ`(sAfkN1R)b>1Z|Ws$nxX8?2NB2{~=FX0-@Oi&F2;v;r>mD`)rOlVL%^aJ7x!@n+~jtPk9w2NH-Mq&(2V`!-!VAjnp2U&H3%dk6%* z_WV}+_@3635QCyaMlhhCCJ;Y9o5ddl2x(!*FY1%PSP7cR>6vIVB0T?35>?3Nl{oSh z!rgQqdi6duV|0@J5=XVO!J>%GW#s3JMQw=dTbjVLMW}q)>{$`8**nNz!Gu>N75qI} z{qjFOjAW2|<$mOUjU8c{bxW}kw7@{aGC?W^$N8@$GKXpfJO=;(I6wf?2H_m)O(nd= zR*MpbjfmBdAdddUnssuxhbSHT`Zltty3U4FBK{#Q(nss}M1GA$ zISd)2u|kU)5F=}}8m!d=1v5VusXi|n62pdc!Na002HR@l%CSfR*6=FFA~a+|thwyO zx2aCZBCmNOvZxaFA=OCD>k>mZ)~c@_k0XPkex92&YS97C_C^*+Tlax7-vaA%ta~TZg`7Wx5^VLMI8Stg zg{l5ZlaC(ziKT*H|m>P-oX0p4hM1a=2?e-wuvpa7IiL210g67ngFHDmfBZX~@m8K0VF#e{{Tb*kjP9rpLSK=^r{Ujx{oy)7A=l!1PXg7oW#Pr8^$ z8BCWl28urXG4$MGpk^lb!Q`07>`=QN)S~+A=yg> zP2n#Z_g}^@tRSU6G40K9TfzP}tz@%CKSos)G9T}-k1%|i3W^MM zAl)S>YDDK3(3k;Y7#|SZbyPTbR#}y8Rac;118BZGeXbtINQAf=Fg%BzX3aH2u({^C zWod)$z3`M27o zx&C!s&}ZiE{Q>u!qPC4~S{;fc!D=5!isx^pU0T!3QKc_O_$= z1_*5A&?9 zGCS@!qo@Y0mdxYcfRWrc&`nq`jE(w;TNnZ~nIa&79GF0I%dlC4DnU zU!>0&hmuB=eya;sEwB<*JY*@^NK4}rr(zEEVM0I$ssrRe0K$zY9bj)dAWtNlm?mXW z2+igQ8w+yrEy3e$HXiSu%&T2(o_ONTXF> zB(?56XZNTIA@SORiaE2{jBTs$i6LiG>KiXmIbdSu^B!U^Pf3hJB5bx}(mI~fW^jor zmevcSjI1AX;W_Pnat9-=KL@c?Nq@WsKd@+9#eAJX6VrJxCBRcO1ebz8sIo>zlB6*r z5Cjqs3J4@gilQilp%|3U4-$aTFc!ifo&X|%2p9qcK@gOX5JH5E2nZq05JrrgQHC`K zrYk~tv2?_)cb(i@Lrgbi^TC>|T0`WXw1${ENRe9astaX>;THdL&MWPXhs55WrZS&~E-9ONQ>V%KhAD zLai5V;q5#krBL#S6h9Hn--L%UhPn|F4Glzp4Jh10RomJ*DQjq*IRO6x)Jr8pL3oBB z`I)9ikJ7L+kKpE=0`0DFqI@Zfy~d6si8iZvOp?kAkBuNubVi{T*u>jE%4e1c63+LO6mWyJ{b@q)8663GGFU8Erl z59SkR>ge9h!g%)zw`Xq4o(VP^r;?2(tAhnnPoRbDk1Y{BaP|4>+B67zP$2@BZfwoq zBoM7Jm4R^#;x(*@mWr@gxN-pRjO558ggHF~S--+EW#tokk#ECqDy^V&O7x)RUQG__ zkzXa6VkI{UL)J&_e1Wmv&_lr8WLx@mIBt5i@sGb`xTMKQZ@`wUn&qSE!;URK}*DqW*Lsf4v^%rz?-hWfjK zl;f1HiVZN+n$_SEYkYLcAcCtH(oq;W{4=I>CFwuLC%;LKOd}zsbd}gnO4n|~Um*9F zzF5)o)`{qCnGmV)05VF~JZpGxswiExgSuh7;NXr-f$lM0m~6UgvwY|lgr>KqCq5P2 zi7HH6b^^~~^2$RwuK*VdEn)NY@*q@k@CQ^leDsf<3)`6BtwtbM!hY+L6r-T)t_-4d zA!H~)`V-ee?4I(6CJT~yABIV3AssDTZaV5-`OPsy0wpjmVi!-lBm?sH3nbX(HA2C z0!(1gLeHOAu!ryt_b9sD!E(+dY??De+jFNganlYmnSMgFa_ZJN0{r^R|E&FWxcs*X zAPLF0ma9Rk617Am4zzqRaw+$o@FDXQ-V-=QFlT^$nXQ|C_URTdP_TTaI?28B;o(g( z1&pf<3BqJf2ZdQ3wjIlRarYrK`L$~Gz?Jv zsMe00Fa%9rZuof`xx%tgauP;Ygk{(n{^ym3=*Os8Tq6q#=G8(EG!dPx8P@Hf2l|a$ z-Jg(Me5PhLm|QF(P!z3;{5Tm(TJDg$e+LWp$Zt+MvWwCtB0jqUyKh>L@ieOY*{GHS zNUp_Y>DgN7vlF_eL?Q9*Po&6`(Ezi#0EFo_Sisbjq}o8`SZt5NuNzqG)}XQ!#yK`l zyz==d?8TB;L1;d(S510)#T@u4%z+~9>vj#4xg!Idrtcy-9{IyaGeJaZ@tyvw6(d49 zegO*i`y7kJW%X4F-3H%q2E6$obUg@?j6@%n2-N7087Dsu1LoS3BnYa-sZ613@TfA$ z&;dRKPQ4zTBgS@)bi>?=Z(l}|m|@}d4@qkR7v}#rx)JVhbRsY~C^bDd)^v)M=>F=G ztB!6O=aprfQOD0v&pA@%8SZtTh*C3N*BNw48y1xV`)LuiGM2yOD^di`37I!8;6mt( z7Q*s_K}P7~NWeQrAj!1D1X* zFzO!0D6SXAOP6NxlIwSu7U>JRXHKEw_6M)yOGH^?F&l6nzh{E#s6werETH=;3{QQWSay z-Q7NQL1o}rK2LoyM^H83Qgu9osITE}p~5>&?aNhatIbK4!Uw-4x>oOqjg6jiX-8l77CZM&O<0RkVv+6Vp@BP`Z# zZ4slatRc?D%Bk!gS^`;`c@`%o8O3cYP#vUqD&qY(Cu?qcVZ>jd?TU4MYK~!Y4sWgj zfm|9-ZRt3@u*hiK9$o)AjzUTms(#UaYKywLDC)NN5bOR{E73KHo2YcWii@7!GL_{hy~-u!)w~; zSb;QJXdc2=bO~xH_qHC}EVv`tNM~-#7Ng4k@=mBVd^=dZ5e@fhOpE8vy)Ygrtl2{p zBGMpQ!>GA%v+=Po-J5|ZpMUERZ@EfRz^9jvLBK&7xPp_I^ns#wY+Qyw;X}*#kN|fe ztrYST_>Nm(@$k*|gtiEQx~b-Xy1Jxeg{)_48_K0fS2|0QQ2CF>sasu0oW9UggVh*>iXQS46<`TCq zPUh1xR)Q-u3s6(vs}uHTCC>f3tN-PMBPYih4|VXhjv3$JqX{p#JOy@ z@H1SYm4&{BEi$N4F%qRZ{f;F!2I5|s2B%$@@WsJNRd?uI1Y9``w=(#B^(=qV_;@L+ zt~;CoZJXijTx5dnic{|QMNiDnjy`-o-H~0nHUJJzDr0TJ^p(;j|p>xvY&6 z-j_HzN<`Y<$N@(R$iv|B+m!gA!yr!?7?@ATO0l40sqx^pK$vM@?}gZ(~hthlzbl76mAV9P>WN)rx0kN zNXmFxuX#rpOHCz0*l{1fc;75MJRHT#VT^=TE+AU^fbvBP7r9-(mBloS-H>2v(RT#3 zCHMXBP@pD4GO^)9qMZr6lt^rgqBXl3;`xSdwph1%6~fXH*tD%BE9zwRkr{@rq~F24 zBX4XwYyIjkK2Bi_k2OF*3P=B$8AliY)^-()8S0DngGe0_;WFR94UtH8F9#}Ig6so*`g)S z8aE}y$@IZK0HI@Sh?A+()}jd89lx_x5iU_N#(?B(R{!UnE7b=;KDn-PY>a{e%&c_& zATEZ>LE^P^Hid?*jaD)FE~me8ryJetV%OJ=8ii;zP+}i5v^48|Rh=Oi@2RPugy5cH zw{C{-1y|i9sSV{W1w*xOgst_G@+hSASGUsZ?O!h8Sqgvd8nBpSZ=USkK`Z956vt z2rhti4;G`lZ{YP|SHvd?c2DFKG$kn4@hZ~4^sL@MYk@RPc;#Xhd!)^d<|q9RTMNr*pl)la8giJRafYXKh}YrwAFw?ix^oMeP{1}=xNSm=a<-z>ZlT^HE^Ojl+t8(>6=E9{`_f{(uf+(6)Rjd^{A9`W<1 z@B;4r?mvfguTlB4#hjF99;XWT=SiBDOHOMqVB2pK=`gS>NEoAD?CZoh9B)b19ca#U zB*zWbHJkpbRTg2OtFg8eR0$5&1*pi}ajGr{VS|M!kGha+qZW*k!%pnPqX=@{TmH%s z%rRwySE@k8LQ5En7R;U_nIPJ5SH%(QbHY2%3l>UX)&@YXKe}PbayJ8#)HBY!a0TDD z(wSrKVh~0zu7T_*Gh8~OT+rfG-NYy#U(A9}jZoJ*j zynvv$fcG`y{rl<;owvn{rmCYs7{=;uUm$R^Dv|mMp=I~ zNdH2-+4HQuc}4JvOkq^_X7-3YpN_WC^^!biCOb*+*>vgM5n8}+sA4u3O~v2w3U>c3 zRCAT_Tio!XQt-9ik30c!u)*@jJoQmOphj*w6A$OK(126NtrX1&;s@hktk`Bvx_4U15tDar9LTri zF(aP18A8~^A0eJ+*UrUB`X^`R=-H^|_){!vijbiPEs)c-1YgXd8*5YjS5GwP$}1wuRWZOhliL!@w%3@!{-(}=J$6vL<38}k zCh*GSK<3c-KOqfgewzWYjkj2GC+QIKQ5h{ldzk3bkQBka`(!v&km zwwc6J?8ZBQT!@hg%sDMf`sL_&O`AECuFbM3nU7W$YdELJ1uQowLOQgWbEl4l4rZ4J zW95ne^b+{wX0Brun+aJ6zfDpNQSa1Qtq^_LzA5C=DY|Tg^;G=r@SXn&8_kI@15gWI zZ{VR1Iqx1eT8sGI$DaIDUol>mG|%Yl{f1dJxwcA)2fw$?sqSI$`bXH$V8u zppKJ=O5JiF%^H7|SKNvjOL{nzG~Th8>LJG_!!#go(YvSLp<53BVCV6_h#QTY@BpLNn6+#T=t;J65QiTLotBVPTO&I*hp%nrdG-~~YN0Wt3C6**hJRg7-uwaz{Bkg`j9Rt;Hk~{{{Ogo43 zsO(=N<3hhL8?~&7uV{i1%+yQa)A~~etsM_r9d?RSPjQxqF?!pH+cc6S6y0{J?6yW9 zdWTifyknBA!Vj=^Rwu`FN@n~Mb4<3K@k5;6R})+x8Bwa^0Ak5`i!}j3u-Ma10shr9oVinyNjHDu<9e<*p>+f@Kv^Zm5gI1kJFRNk z;XNae?w)r_Kz@EP``ynbYr3x;;in?FBKs*nfh z=~y&@a_PQtWJ`jI-uMDzPvHK%{b>wUGvGz1d0g(!bG*iAdiw@%4K0c?F0H} zvN{#(_Y!SobPsG9V z9-6UhSE85I;|?xY^q!=;Nh$F=;->#^sa(nc*RMFda*`vn`C;@+vC^H90f@$v?R}&%nO~@LN(o)9Dt3_fZvzOP82nmC+Q}TT@ajm9nAJh z%mhjbGu5Q&Xd*wB(G%8Y(^6`*j{CppQ?4}4Oq1jZ!A%a7Vo z0#HRhr-B9i-wOzvsff9GZmY!`6&_qbEhGZ6KKt|_;ced^@iGbIqsHP|LN5w?koVRjGCChL`q!p5c0Il-Dt zEuUN;Sn3!ODTrsIZ_C;yz5J7@9rt%EZ|eF zs0E+4{*tZ>krpg4KAr!RF~cOpd5JVZtq;AuEQB#D1v0?;7I1B5u zEltvLik7wHrZ_G;%J`&Pp&=`c{FKzA6NCo+sG(o!0dxSs!~pzzhDxqi|5s6FYQZt6 z-5?h!{LE6}Gd+z78py=M&-$5B;)HU0CnrzgE;q_5ID<#Uz#Saw~p(5ws8a+#?w z_NXIGU4QBb^MFhjg9M@=8{HJor5=i$n=jaC(w0uyl*5`2JB?E&7|!WRfL_I6M*Id% z)LtG&5@~-8WpUW8u}yz!qe@HX9BiC}fEjM=Ky})in9irXuZO%47XRgt#dcPR<#W$;T;S@mXT)8Oq! zb|@8&1$Bpu{awiyS!>(TRaAf`h0^I^uGEe2+Mf+Q8^-G#g`hCcq{>{{nH`o>1xCJz zvT@Kv39SThWddoW1Qw0lhEkl15Lyd6)eCPT`N&M z`#`1{YG&9EcPFSia4Edm)5*~%JC>K>)ow2m0_%q_bV%GOl`Lq4W|s8~{5^0O0i4(9 z--YyX-cyTZZPS+A*2Yl3BbS^Bc1J?jH>(tuL@QAZg=xM+;4K6SjGFvwN{`u-mnJQv zjzuVeBqObxwE4{wuUDThA6ZyRDuH`OsyrK`P(?jiixiIlfJq{@OV6t$*l?S4f7=8< zk@V-VQg^|Z@%3@M1oP`}NqN8Mcjz#Be|I}#F`uV!NMWO7fG+?bUHLd7kb`=BwfcF= z|7)lO_lTKSjV>33Yo~jLZQ-?{p6a&!MCN;3Pvv7*T3Es&uu3$@QfHzXz0@stNP^}=MW#a66f9*&0SA-=F@wuzAN7ng|nhW z6pX5opMKX3H!2c*Vj%Q?In_qu3embeGYUJ@lu|XEOpR<-I@(|~kwQ9Nzhp5h#={pO z4V_#)h0g0@`1YvURo7pdK;hB@)>4NWdMb_jQ-7Qn3m|^LdL(trE;PAB_};nzExbm` z{mR;4q8W3P_qWoVsi=M#4T$7OSW8xMUwkmLstJJoAB$YC4qFu3;%^f&!ktl+>J28+ zKlb^Qw=blSLVE9rEJSejdV8$hzl#-R)&NW`SgbtbZIn5;OMOA zfryOAh^WW}uQO85QE^I@`|VC1ZyCqkqp@>blgQs3=YqXlKO=3Qm_*z_Ixa62$Tk0g z;L-z8Lnkq_b6}+xNy6LCYU%T360X)^@!5g%;$tSjh-ig>2zHx0ymSmlJ$Po$)WVyM zG^>Ug6Ej=j*h(&bdm#H<{Q>>uFp`HD7f-1d2CSa96_nTx^+dRm&~eaZw0(d;ix{R3XVECNIQ$;lyNl zKB1##i zLmsbAamHF`f*W$2xka>@SwpH3!eV&iXb&SeIa64$Pk-uBA?gxP+ftDYwMPEHDd~tC z!C@FZaC1Cy6r_ANioV6)^VLyzub+dP(Od0;fme#9U5AfgEdJp#>DqdKGdW{N zGFKByK@Q4x8Rop^u!@p6-4dM0E(L>!-@z2&Y1UjK0R7uMUmd{btDeXl#h_zX;tSJY8W5$bpsGlhkfh?1zloRi9qPcX+X-{>(wPlD~|TwQ;`KOz%l z{>|8FU8c#8O+N!07xcBn<2mqCR!;3O1wV1}`MH5aK7W*iSz~%&-|$xx>Hh60dqKSj z^ij6VK&U0r7;Bd#A4r8t(A`_tR5`7h-1U%6rxtL#Z@k*I-J@X$;XqFemiJtoIe_kn|3L zvtB1OLlePQgIP}CU-gGjc&P&^;APnT-J-!o)Xc?Ue zq}5C({84$S_(G`Ae4%KL{y9Gk^HNuy7nWt1rfCMgzRE$Lt4dHz5p2pzv(-nod=n&pA;_Q<` z_RuoXcZ+(_qXf`Dad5#T{-i>#y)%`rtT`j9Oec%&Huf^`XTj*svT&a{Nc0s98@m{X zLkt;OqW`26z#2`vhyD&{m^jdI!K0Mp^ zMi58~(DR||!OYq3C|BK*WIIBVeoz+z!l^Iv1=yAhLh!VnkWVkT9R~9E2SggCC$*1 zd0qiUM}le5o7^}Utc7^#(NUpN^T}XIq;rw1ooT9q2?9ETc_XP0DceZq?bQtzv0XU^ zkUv2<&MR$;d}HnEvJ-Gic`)PIZ|v|Xd6IsJyu|VG4G*i`Lk!15o~WrR8JAclSQvNM z29Upr13)^}n)1iD6luVi?wdjc`lV`NExNP%{4qBCFdK->#DS)aaa)N_%G9^Y*jj$n zAqQIqH~F+Q3#eV=wQ{eK&ktV+pNvUnYFNl1@eB+ruc|TV9c@3fTDxpeDM#+|^LR57 zwEmi%epl+4UjqvKel-8{>ephJXb#+5XYfsP@WAvtSb;Df&rP5BTXxFt&)70nPh=v2 zOuQ5ONhn0HI(L-?z?42sIVL|;CpqJyK&u}O7Q@g#QHiZ9RrS6jb}14L*Gg4p!yG1fkBBs5 zYRbNumpQ2Wi@@zH=70UfKrKpTgDK0i;9E+qbZo)A3o34X3QidPiAP8PTA{5kzUlB`aW(?xv9E^|8y(3 zD!0$7;A7nOQnkLk{A8=sQ)@su8=9UhU%tn?maU%|l^BHJvrKKqGLyt!dPA89lw|o+ zkF&~f8ZbQ2V1fBQJSY#e0Dyk|_ucNaT zt2gOUdsFDW+seQI4=F5V0B^mxURMmfWIga z1c(QT)%Z#j5y?cicci$a=n*W5iNwMpplWO3Hx3Jj3#elan~fw%8UrIB5P-mdfr5l2 z;z%?Sibh6LB$q!UfbgK`SR@P^0YQ)u3mcd6=DIrci$-LIcU;OpVr@XUTu|6j?Te-2Nk zzlQ8p%h^LkaJg3yMo#-N=hAct^39|A{s(-whZ95LJ*)mosXG~5uI!~Lq`h*6!#(Ts zQ-J**i6tY%v^V>#Sk@B%Hu`t^&D4>cG_f&9*lrMgEr%H_8T7ind3}gKdfR~En=2#U z@@Kioj)uOki0HBf2nOr1YCE5|hHR%y_rxOtf6F(m%|v zu6QqvE&s`{=>Pb;4@#gRopzaJa`~hEr4jkR3Fpb*>h`*%=04f z6AETrI~HiQKmg~4nJ*0&g`Qp-Ew8;^87u@_^c zkG>k$a)=ssb?VoK&Jn{^l+ZsD!SQr$18rSFg|OJUur&~2ekIRSdbl9aw`pmeFm*Pu z$A(=D8!Z}&`rNbd*rQVQqFT)R)ym=zY`#Vb|C+gz%(QRY6rQs#pY7ooHTlserx89h zvNmG%+Uk*t3OEC0WT%6ytmB3>oS3l9>*sc^}sI4 zrKsew@)E~m{Jwm4JrpKLmENcaQd;Z&vH;^ocoD{s^@_34ZuI!^!L9yh7VL{Q1C^B2 z526yE<=5S|efM3z$6RFB)=jEEL{PhDW2fAOVo@PjG|T~R@L zBAzKYpJnRX=iH&=Ilj<^og*@6>!J@yEq&Vc`|B~_YgxRd0?z=x`RKisWT06A)S^z0%w^3bJKos+~ISZSwpLWc17@7Dpp z5s_wB59`qmKOMpmWX-Fe`P!dLxVbLv8IChmSaBt>i9s{0S?<~UL|c>v1p6oe`Nt@L zOXUE32$T*pvHT>J)$lQxXh6-f0aYGLhOB-Yx>?02ql+z!_`$oNTk$-4oEun&7f6DQB2htUYP0B_&YH>Evd*1I-y%WHxIYYU8$1rXM@P7o;ORu@V}s!>d?r23P1M{xxcIn zslk&KJ~?GcJCqpbfs94ajGq*wzNC;5uZw(z<0s^{ww0g%rFV7ctDu9dS3!?VE)I9t z8z|>rn!d2ShOlfb%t#Spq z+*FGR2qrdUfYXUHnDx$TFFsCeQUM95aov|Z+&`N zyROx>h5sEj-*p_Yfq{An#?#$)2L=sMqj(H-^voH-DDQO<_o51?L}1d)!%>v#>k-$$ zw4$!}X6SlwI7=w@F9rfORw2Us`i17_W^{jSiIo`GRh5_nD<+s~^BfxtZaeeHWLnfG zsT``!&P`>cd5l;{iOo5-QljtZGyeki1#Ty^JB>w2na(j1#+dOS_|Dmzy?7fSg8H14|a~Y|_ToWc)hR z-r~4?d^5#uSiMq*%|o{-*kuo(;fryh6@x+2nuV;@90xY13}z=zQwaOnE~b>!g&$M3 z=Fty@@N))?hc`Lz+9co)IAS#h94BMV6YsAQm@T(>OO?a-JL<{bTv1}dk*u&o+{L%r z)tnwSj6dmHEt3Z0a4(|5bcTb7>x^MUbVa$$!f+(Zpq5GJ-*He>TyTfO-=W5e;UVQJ zoCb80p(1c@7s7oby~zEU;Y5OPk>kSceY<;9jeZ5Gg8hM?ap=d#%)61&5I&6XGe&C5 z(NS5=no16IvW##>=8vUnwJggf$y^aN%$YVh#6Bs`bChFC5;b=WO>_|^z3Q`?7o*>L(a zVfW^?LaXAK{4ND+`wT{$u*U?!`~u!}D#Jxy$h+(FSe%2a-t#%Qoc#A3o`c(%gbr>M z2Bd?Ft#LZIYU6zGJ*I;zxYs(k8XD~2W=EMFTq3dT;0j4=2RHT?cW}9qcL&!3HspWr zqoY+C_|tTC!5omIfP2`uS3X?u;EMYpYdz(N%A=|{{GIt1Vg9DmCbk={S7XmvpXcdKRsUmY|Z9`z2yDdEdA+dZr`V{DW2xgiVRaN*kiU+%q~t zl7|`&{T#L=RWT0KsK6X~B&{3UD!odv=)|Bht9{5i2%W|%K(j2~I6V3*z8u#6hdumFoB2LIw%-=az!xY^H6{T^Z>Qws4A+?&2Q(Jzr6 zDKQTl3qf8)0pIf^u@m}NYM8=YI&c1=ukEc`v_E8f`?Os2eV)U?pRSj;WBQuhIW3if zHiLruSME_7fJUWZhmy5lvoaJs>y}cH823xgEzC-wUpH}1*~n9_BuP`Y^%$;GDb;pp z1&SieN|!QG9_#0ZNv5Vd-)ip$&*TLg4-nA>Kw_*2_j-EJbJOqO++F3F%BPG^Ubsze zv!!Ok?3G_Z_P)A;I1coa)GRp=eD~yG!;{^>2zV7A9$^%d6c~+nS`drIyW~9-mqe!x zNi^Qt1~C?{S{8HKdv(w=)oJfDDYbf{hKS8tlG{0r-MHPso;JHc&Lm}-6Pm!xdAZPKMqr*Yo4?lreI3i-Ax-y zmG@$&G+d}aQr;V_S!2((>$$SChpYOjf}LyB^}ue%%#Z}UaJ&)9d*j0E zWyF5+-oBmqMITs=-N}1nyJkAsr|U3VzBv6Tea7>ZL!hN-!QvQ8?q9X1omm5O9imZA za7T8B!DqEpBt#5|^xjk3>o`#-29RQgze-+n4&~I|;_<@{3$S2vI7|!Pr48dn6sov;Z}fvPpYVR5@qNjX~`eU)l0H zP@EMznl`L3omKX3a#DJOG}(VQ%z4EN1Z=&F3A&)fWscENo_a_EBOclo-Q4xev zk&azkHplXB9@?ID)d$olahD{u1yMN0xubnfsC=NUP1Fe%N}g`D>w1d8`sC>VjC{CrO9a+Cyx+&SUCCd+$+w66p`^vvP;bD z>!YZE0J6gok9fsqtmaI*9hGroVb_0QG1jSu^_L80Owk-Zl`v*py=y`-n}x ztP?Nwfqg62N6uXvvKKRpf(>CorE8EA)~|XaQt4=x42P_tE4_?UtzQ2vIY1y=iyCGp zJ&^#eTSR9oF#C-oqdf#HEgKc#D!>|N884OOUC0YsL4&MGzQrnu#pq=K&SP;n-V7q~ z{P8iI?!0(J5x=eSqWopNuYJfCN{b_Jf(mHy1MXUD73ebV+)ZeA`BF^^s~j?;G2per(FZWmPC3=UJ*Q!()Q03@gD^+wItf8jAz7 z>Yiog;pKdbW3?jUyf*!f^O{JO*JB<-*DU(km~N|BffHz0{iFqd-L`g(AxKAWn4^f` z?OyA`7KopdEE{1xUt8A+i4&HoTjRrEJO}0O*_D^aHSBpq_bGFS9Lq9C|FNsmB z#}HLbknhK4kFDhO1m?A5A67lyckh0zh4|o)oRiBA0~@|z-^TX=N!l*APFAU+So-Z* zIR+-1ql@@TFI)(bouIOxp)-Q`I_7N~wdZF6wG!c;olBi8hXktZ+^@ z6aHiGJB{8Y$<>V2;)POXk9_uGgIPtD`J-Yl7T84Ciyhz;-+QsBM4B4BzV}|O?%Y7a z_zaZD-g_llv)+4c#Z&LS=GLb7-cizu-g|ZVKJUGz(3qQgZdwmC0ZSUX%!JA2G@9XWXz#N`=0T8x3a&%9dT(1D-x1#_`{y*?o^Y{lI z21d7_I$d(>bb^}&NWxS9a#|8(7Hle@KKnkLoqc8aKDn+BAG%kP4fC#eo_e9)TmHpD z$STyKr3{~^3fv_!ay%kKW55DK>I12j8UrUgJC+{m_DwlC(bXPIhY`!V7o&dV^N59#%Z!} zm?u{+A%lj?Lut>?%0KJNq3!M95CK6zGFZbc)J=UdBtnG+W{$|$m=f*BWoS3rP&2qo zUDPZ2gZCxS)B;=L#qxl}9U!Q|l@#|nR(OE$%0jASTo8TvYO=;ZvGrduz0ZBw9`D`W zEc{H8y2M`KRKn(dfR#X56JM&a%de$%^C9yA^yVB2-I+lCKdGZn?=aasR_crxXar#1A6t$Rr%nDgb#*41s@TYfLz+lz%c+PvvLq{Dz9;ynpsTWix& zbHA$Y@n3Acb+7HBr?4%KAI~Y@0N1@#R5~5G?v3q|aot-nmzw9gSLrmrVO{sCR94r$ zhFmB!J*=51DwD|PP1X(Yx;F@Y*S&@Qv3|>RO3AjyKGv`_RT4@U5#GpjGpVXZWqxyD zoxbSaatMyZjP8wM3uLEmbgy#Z!`{)oW&?NL|LEQ+?$NY!_5E$bnq;-;KaV{$wCW(a zQRkUCDAMI01X!NUVC@R;sP13iF^DE#>WF2drESmQ0yM{f*2^m)C&2VFe#A?Qh-(Va z%uJM;MQSLQ*7R9qm!(`H?5%*o722yMmbfgdgy_GA9s-yXVsiV z?{>CwiAm$s_waiL7MLn(kLO%UdID;q_9h9IgY0?$Tp5?EYkT@#VA!lj4>|TIM}fva@{A-HV?{}80cJ2ADI)!bFoU}h z7HH@nb+n|w2#V7d{N;zgZZCqu)gcaX@GE~>)zRP(SjFSIUQtm8<^lNJ2P7+pks*o1 zP(u2FtwH|lE5X{{?Z{9>{$g@ZqAq2#5gXklb~zh*K2WSz44d2bNevFpxQI=d(l+@a zvh?OS!bh1(H$HG}N5XmXEn^Fde!Rm;Km0~6qiD~slB;klm-Pco+rrX?7yBbqD^=K}kRNB5J7&^m%b#Xn)nKZP|B3Iv*)Zs^g&KsL9jWfrgl35Xe`0eW;V$ zpd9f>ze$x@8goV3s}adjgkhE8`vBUY9CY$yHMzqnn4k1_vNzEMQ`S0ZarjSUDU zHvY9X0jB>0poWND=Mr{3j$OoE+ny#!=)?8HsQ=XDRz>oW+)xHVtij-Cs46oqersf% zP<-chfip{wEm3BO#$QZ5yunw2qhEmtc+kB=|EhcI+Qw zAuRO;;^f*wt^ti+m{duEzGvN#F)Cn<_2`r$(>@g!a4$Y} z3nak@Dv(s^8pBb-fL*xTBp4%wX#h4*GafK=8*uZzMV5qM_-Na5xrlLkwXZwnV1Z>o zP*6~TC;%w{EC5lPyZU+JRQQi7p~qior(Y0zzMypdW)+p9P+g-`SE;K~F)JtN+y?xU z7tej)GwE?A?Uf?BvvQ)-lE|E_SP7o z<*}g-B{!@Y5Ql?fW{@iYY;!Qy03d_zyu!w#qyw#4{l_>YXZ1rB*uO>Vlk2zmYU5UH zI{>cv5MOaxl8e9x^+U$o$)b?6j`bas&kTjZSgJJ~lyBZ7qdt{_K2L3mSA9G;r{TPF zNW;$Ni3B#jts(Y3cry`d;%ihJ?L9X>8g#H45RtSn!&V1auCy}QG_Z|i_7(5DNG*;5&}ja>IHzIxICttlR)@G zDe@OEC7Gv(GG|;t6ua)6C=S!--1@)Ro~Cv~%zaQJaUk18-8f;DRv`k5P$m;j zpO>c;SD^=ci_Ey}jchcIDw)l(%mD@^i7*ahYn#9sJ15wXm8AtBC7wP=Olrpa^-`$Ni-P)hA_)lou8p;w$Bfx}&o??&mW8}pD} zBxDw2pf?6oYc}j9{^N;&m?NAej@P0Rt?1oAhu^g*Y=SQ+I@hTZf7YX z&@TUisgQQ%13tCYzC>)zDL34DvI)|qM+1jJw*oC)AaQdd80PQf3D8`bk`==t`oj9U znP0WP2rqPG@?rWC=>5p7qEo@_1RWJOqYciW;%))Yq38AkepjL}9r%QrYrkQhKD>Mb{0jM{e-F?r z9icR?bu`~crDnmgpJmfavjG`j?#}4*{;RgCz5!bVl^f%P{y-0r^Ug~3z=XP0;AY_4 zBMmk&|M9)Qqr{h<+j|mWgbH zDbvUd8o1uDhw!T-?M^Cq;|EsauCve%vf0D7ED>04{z zCmV2u*xqFejxRmelS7$$Y`0Bvt;i_bimhKE~&?_fVZaHGUrJLGWqlcBC7R4fusN&d{)ZqyR~p*uOEpD?;_;z80CwUn|px`A$?k>2|sI zWXwOTIpU1m2Q=j$F(C^*Umc%FdV%ZgSEC3@{K=D&x7c%VVGdMu>4JNlN~Q3<$h6!b ze}Xp3T2faG?tCVzBuZY+0^(rW^R+CU==q$tCJc=ts7iPKvD=+#V5hcGO47k9NkR&z zDPw*)T$lBaApv%hp#HJ5gHQ{}EV_5w$*o<)f~Ekp?XPI+jbmVUyDtuUZFVerfy}&? zDjfHpH@!vjP5@r4?AZS=`IJ_&W4oZnp1T?NN)hs7&J47Zn8NC_!~^c~!W!IhN2#Ov*n#m9Qt zq4M;f-`Dc2Sb^g!e`_so*G+CGmgl2t;8R}61<%W?A`wE2;`8wa5~CQ(H67jB&En`` zGR*SgcSGY1G)8*meT&iqs=V^buf3!4j__Q0@i}RaNC2dom5WqQSnhx?u>!z%OSw!vU;^MK^;3w(%2byu0+!u!YWT@& zu)XG?C|_ehk$N!JM8E zhgNValxHG$YDPnb>768CBq%IAEfcZs9BY+Xri@~KgVG4@j3?5s1FGv|kzTBn24cY4 z;3O52*dxV?j+iW}K2i+m9+{onQw#_&0FYv#$p0v=_N1q|XmnabNy5?l2N_{sNBf>j zV)21q13ifsZ((X9X8vt_rFgL|FU>3O6EBRXmOZY z*(_ElJQfI>67pfpVwD$uR*hNACxIg=;h??Tj8^jOp0vWQ$qCG>E9|t`qp?0w#T(zP zAk2A!9H>q$CBcHU8L2WiGF_8=`!W|>kC~_)6 zo*)a!yS~tkad_S6L;m%Njynf>xL$AV!F(?=hWVZ~#I>7}3lgsbnbRFB4NNH8qu6t= ztgud5(E8AC{jl0fm9asK)X!#`KQSzon5sP@gUl#5B%4@tW*fn+BCJcDPve?NZ;WhO zAJB))?%>0mDK(ei`-q}gUvIyfq#mJ z<(y)DEGA!LFfqW>dmoEIG3o_}=EYn+5US0#>WZ#k`+TLgNoO` z6lXtMcsHvWZovg2#(^_wN-utd$L7b`BffS?Q%)y`|`0$0LgkR*+1 z8+pL=^RZ=qooV>h>*F9G^<0R}9zBGV?d$CU)rDLAX*hb|D#A~~!+HNXSN-30b@lD` zv%#z^I;0$&ByPs!i>W2^3T_1Yaxlh^OByj|dl{N$Gz>OdN{V77*xMkNY0J3S%~Lxl z)VwB4eJ36t3=T3L!t&V(tArx^`OtbTtph!WEfm#f0%iog5QYlGAVdHkF%y7xv|Oi; z^q1FVoO$$z<^3;t2H7iL`7B**PM3sK7{?L=K@fx5{oRHkt;0`4`CbM7=X)8tPQ*_~Pf_O=cv^B0W(|)lcZCPW;7zV^<)AK$44v@mr!028yuTa_ zWd5s|YG0ksR4hn;o};u^Amf@u|L)1UD0e+wsl0>_xP%*#KuFu<>yKPy$+g9hbOb1P zG~4tlPZO57rR8O6edwccYJ#wNlUewVBh5mjx;_F=ie)%X*1ahGZ$!yBO|vW-q{p7= zpdp$wRwLRI?{Rt0Wt-YOg}eVDU06z07`=3*J-$(nrc1|7X(eNHPVX#8+77FDwvp4o`uiHRFGOb3`cp66kwx-5KVd689cUl^^s8bofwmOI}4R> z4m2+THR-#~nEVJ8v}FL~BsH zCpa3y?>Hi)ua!low!40p-_c#a4tcBO2-6yO{ciaE=BLDBhqYFF2X_R=fYC?Svq%v> z$_Q9EDFw60oVU~J3je;UTUWzQw+J!#7?=yJ#dT}R(69h<29&(@zrnoGC*b)M^n^TkxAf%y&&m? ak`+ueL3K(t%fjHp8YTx{{TKq4{0SHgXx0+| literal 150559 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 j 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
q0^k4d}P7C2&~x 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 1. - * - * This only modifies the thread's history and does not revert local file changes - * that have been made by the agent. Clients are responsible for reverting these changes. - */ -numTurns: number, }; diff --git a/codex-rs/app-server-protocol/schema/typescript/v2/ThreadRollbackResponse.ts b/codex-rs/app-server-protocol/schema/typescript/v2/ThreadRollbackResponse.ts deleted file mode 100644 index 6597cc8178..0000000000 --- a/codex-rs/app-server-protocol/schema/typescript/v2/ThreadRollbackResponse.ts +++ /dev/null @@ -1,14 +0,0 @@ -// GENERATED CODE! DO NOT MODIFY BY HAND! - -// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. -import type { Thread } from "./Thread"; - -export type ThreadRollbackResponse = { -/** - * The updated thread after applying the rollback, with `turns` populated. - * - * The ThreadItems stored in each Turn are lossy since we explicitly do not - * persist all agent interactions, such as command executions. This is the same - * behavior as `thread/resume`. - */ -thread: Thread, }; diff --git a/codex-rs/app-server-protocol/schema/typescript/v2/index.ts b/codex-rs/app-server-protocol/schema/typescript/v2/index.ts index a537a41004..242c9fc3e2 100644 --- a/codex-rs/app-server-protocol/schema/typescript/v2/index.ts +++ b/codex-rs/app-server-protocol/schema/typescript/v2/index.ts @@ -543,8 +543,6 @@ export type { ThreadResumeResponse } from "./ThreadResumeResponse"; export type { ThreadRevertParams } from "./ThreadRevertParams"; export type { ThreadRevertResponse } from "./ThreadRevertResponse"; export type { ThreadRevertedNotification } from "./ThreadRevertedNotification"; -export type { ThreadRollbackParams } from "./ThreadRollbackParams"; -export type { ThreadRollbackResponse } from "./ThreadRollbackResponse"; export type { ThreadSearchResult } from "./ThreadSearchResult"; export type { ThreadSearchSortKey } from "./ThreadSearchSortKey"; export type { ThreadSection } from "./ThreadSection"; diff --git a/codex-rs/app-server-protocol/src/protocol/common.rs b/codex-rs/app-server-protocol/src/protocol/common.rs index 26ac59ec6b..a45b943055 100644 --- a/codex-rs/app-server-protocol/src/protocol/common.rs +++ b/codex-rs/app-server-protocol/src/protocol/common.rs @@ -753,11 +753,6 @@ client_request_definitions! { serialization: thread_id(params.thread_id), response: v2::ThreadBackgroundTerminalsTerminateResponse, }, - ThreadRollback => "thread/rollback" { - params: v2::ThreadRollbackParams, - serialization: thread_id(params.thread_id), - response: v2::ThreadRollbackResponse, - }, ThreadRevert => "thread/revert" { params: v2::ThreadRevertParams, serialization: thread_id(params.thread_id), diff --git a/codex-rs/app-server-protocol/src/protocol/v2/thread.rs b/codex-rs/app-server-protocol/src/protocol/v2/thread.rs index f13ab99817..0d5a7b5a99 100644 --- a/codex-rs/app-server-protocol/src/protocol/v2/thread.rs +++ b/codex-rs/app-server-protocol/src/protocol/v2/thread.rs @@ -1241,31 +1241,6 @@ pub struct ThreadBackgroundTerminalsTerminateResponse { pub terminated: bool, } -#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, JsonSchema, TS)] -#[serde(rename_all = "camelCase")] -#[ts(export_to = "v2/")] -/// DEPRECATED: `thread/rollback` will be removed soon. -pub struct ThreadRollbackParams { - pub thread_id: String, - /// The number of turns to drop from the end of the thread. Must be >= 1. - /// - /// This only modifies the thread's history and does not revert local file changes - /// that have been made by the agent. Clients are responsible for reverting these changes. - pub num_turns: u32, -} - -#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, JsonSchema, TS)] -#[serde(rename_all = "camelCase")] -#[ts(export_to = "v2/")] -pub struct ThreadRollbackResponse { - /// The updated thread after applying the rollback, with `turns` populated. - /// - /// The ThreadItems stored in each Turn are lossy since we explicitly do not - /// persist all agent interactions, such as command executions. This is the same - /// behavior as `thread/resume`. - pub thread: Thread, -} - /// Replace a paginated thread's durable history with the prefix before one turn. /// /// This only changes persisted conversation history. It does not revert local file changes. diff --git a/codex-rs/app-server-protocol/src/protocol/v2/thread_data.rs b/codex-rs/app-server-protocol/src/protocol/v2/thread_data.rs index fbc0b70471..6d94cdd78b 100644 --- a/codex-rs/app-server-protocol/src/protocol/v2/thread_data.rs +++ b/codex-rs/app-server-protocol/src/protocol/v2/thread_data.rs @@ -286,7 +286,7 @@ pub struct Thread { /// Saved Daybreak choice, independent of turn execution. Null if unset. #[experimental("thread.daybreakEnabled")] pub daybreak_enabled: Option, - /// Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` + /// Only populated on `thread/resume`, `thread/fork`, and `thread/read` /// (when `includeTurns` is true) responses. /// For all other responses and notifications returning a Thread, /// the turns field will be an empty list. diff --git a/codex-rs/app-server/README.md b/codex-rs/app-server/README.md index 75b318f7b6..e1fc57eaa0 100644 --- a/codex-rs/app-server/README.md +++ b/codex-rs/app-server/README.md @@ -204,3 +204,14 @@ in both `full` and `toolsAndAuthOnly` detail modes, including thread-scoped read This is the server's advertised MCP capabilities object, including its `extensions` map. It is null when the connection has not initialized successfully; capabilities are never inferred from tools or copied from a shared catalog cache. + +# Thread rollback + +`thread/rollback` has been removed from the API, including its request and response +types. Requests use the generic unknown-method rejection path. Use `thread/revert` +for paginated threads instead. + +Existing rollouts may contain historical `ThreadRolledBack` events. Their replay +and migration remain supported so resuming, reading, and forking those threads +preserves the surviving history. This disk compatibility does not require restoring +support for new `thread/rollback` requests. diff --git a/codex-rs/app-server/src/bespoke_event_handling.rs b/codex-rs/app-server/src/bespoke_event_handling.rs index b5171d2320..27ae9505cd 100644 --- a/codex-rs/app-server/src/bespoke_event_handling.rs +++ b/codex-rs/app-server/src/bespoke_event_handling.rs @@ -1,11 +1,6 @@ -use crate::error_code::internal_error; -use crate::error_code::invalid_request; use crate::notification_media::without_notification_media; use crate::outgoing_message::ClientRequestResult; use crate::outgoing_message::ThreadScopedOutgoingMessageSender; -use crate::request_processors::apply_live_thread_settings; -use crate::request_processors::populate_thread_turns_from_history; -use crate::request_processors::thread_from_stored_thread; use crate::request_processors::thread_settings_from_config_snapshot; use crate::server_request_error::is_turn_transition_server_request_error; use crate::thread_state::ThreadState; @@ -70,9 +65,7 @@ use codex_app_server_protocol::ThreadRealtimeSdpNotification; use codex_app_server_protocol::ThreadRealtimeStartedNotification; use codex_app_server_protocol::ThreadRealtimeTranscriptDeltaNotification; use codex_app_server_protocol::ThreadRealtimeTranscriptDoneNotification; -use codex_app_server_protocol::ThreadRollbackResponse; use codex_app_server_protocol::ThreadSettingsUpdatedNotification; -use codex_app_server_protocol::ThreadStatus; use codex_app_server_protocol::ThreadTokenUsage; use codex_app_server_protocol::ThreadTokenUsageUpdatedNotification; use codex_app_server_protocol::ToolRequestUserInputOption; @@ -102,7 +95,6 @@ use codex_protocol::items::CollabAgentTool as CoreCollabAgentTool; use codex_protocol::items::TurnItem as CoreTurnItem; use codex_protocol::models::AdditionalPermissionProfile as CoreAdditionalPermissionProfile; use codex_protocol::plan_tool::UpdatePlanArgs; -use codex_protocol::protocol::CodexErrorInfo as CoreCodexErrorInfo; use codex_protocol::protocol::Event; use codex_protocol::protocol::EventMsg; use codex_protocol::protocol::ExecApprovalRequestEvent; @@ -120,7 +112,6 @@ use codex_protocol::request_permissions::RequestPermissionsResponse as CoreReque use codex_protocol::request_user_input::RequestUserInputAnswer as CoreRequestUserInputAnswer; use codex_protocol::request_user_input::RequestUserInputResponse as CoreRequestUserInputResponse; use codex_shell_command::parse_command::shlex_join; -use codex_utils_absolute_path::AbsolutePathBuf; use codex_utils_path_uri::LegacyAppPathString; use codex_utils_path_uri::PathUri; use std::collections::HashMap; @@ -145,7 +136,6 @@ struct CommandExecutionCompletionItem { command_actions: Vec, } -#[allow(clippy::too_many_arguments)] pub(crate) async fn apply_bespoke_event_handling( event: Event, conversation_id: ThreadId, @@ -154,8 +144,6 @@ pub(crate) async fn apply_bespoke_event_handling( outgoing: ThreadScopedOutgoingMessageSender, thread_state: Arc>, thread_watch_manager: ThreadWatchManager, - thread_list_state_permit: Arc, - fallback_model_provider: String, ) { let Event { id: event_turn_id, @@ -1036,25 +1024,6 @@ pub(crate) async fn apply_bespoke_event_handling( .note_system_error(&conversation_id.to_string()) .await; - let message = ev.message.clone(); - let codex_error_info = ev.codex_error_info.clone(); - // If this error belongs to an in-flight `thread/rollback` request, fail that request - // (and clear pending state) so subsequent rollbacks are unblocked. - // - // Don't send a notification for this error. - if matches!( - codex_error_info, - Some(CoreCodexErrorInfo::ThreadRollbackFailed) - ) { - return handle_thread_rollback_failed( - conversation_id, - message, - &thread_state, - &outgoing, - ) - .await; - }; - if !ev.affects_turn_status() { return; } @@ -1239,70 +1208,6 @@ pub(crate) async fn apply_bespoke_event_handling( ) .await; } - EventMsg::ThreadRolledBack(_rollback_event) => { - let pending = { - let mut state = thread_state.lock().await; - state.pending_rollbacks.take() - }; - - if let Some((request_id, _completion_tx)) = pending { - let _thread_list_state_permit = match thread_list_state_permit.acquire().await { - Ok(permit) => permit, - Err(err) => { - outgoing - .send_error( - request_id, - internal_error(format!( - "failed to acquire thread list state permit: {err}" - )), - ) - .await; - return; - } - }; - let config_snapshot = conversation.config_snapshot().await; - let stored_thread = match conversation - .read_thread( - /*include_archived*/ true, /*include_history*/ true, - ) - .await - { - Ok(stored_thread) => stored_thread, - Err(err) => { - outgoing - .send_error( - request_id.clone(), - internal_error(format!( - "failed to read thread {conversation_id} after rollback: {err}" - )), - ) - .await; - return; - } - }; - let loaded_status = thread_watch_manager - .loaded_status_for_thread(&conversation_id.to_string()) - .await; - let mut response = match thread_rollback_response_from_stored_thread( - stored_thread, - conversation.session_configured().session_id.to_string(), - fallback_model_provider.as_str(), - config_snapshot.cwd(), - loaded_status, - ) { - Ok(response) => response, - Err(err) => { - outgoing - .send_error(request_id.clone(), internal_error(err)) - .await; - return; - } - }; - - apply_live_thread_settings(&mut response.thread, &config_snapshot); - outgoing.send_response(request_id, response).await; - } - } EventMsg::ThreadGoalUpdated(thread_goal_event) => { let notification = ThreadGoalUpdatedNotification { thread_id: thread_goal_event.thread_id.to_string(), @@ -1315,7 +1220,7 @@ pub(crate) async fn apply_bespoke_event_handling( )) .await; } - EventMsg::ThreadQueueChanged(_) => {} + EventMsg::ThreadRolledBack(_) | EventMsg::ThreadQueueChanged(_) => {} EventMsg::ThreadSettingsApplied(_) => { let thread_settings = thread_settings_from_config_snapshot(&conversation.config_snapshot().await); @@ -1635,42 +1540,6 @@ async fn handle_turn_interrupted( .await; } -async fn handle_thread_rollback_failed( - _conversation_id: ThreadId, - message: String, - thread_state: &Arc>, - outgoing: &ThreadScopedOutgoingMessageSender, -) { - let pending_rollback = thread_state.lock().await.pending_rollbacks.take(); - - if let Some((request_id, _completion_tx)) = pending_rollback { - outgoing - .send_error(request_id, invalid_request(message)) - .await; - } -} - -fn thread_rollback_response_from_stored_thread( - stored_thread: codex_thread_store::StoredThread, - session_id: String, - fallback_model_provider: &str, - fallback_cwd: &AbsolutePathBuf, - loaded_status: ThreadStatus, -) -> std::result::Result { - let thread_id = stored_thread.thread_id; - let (mut thread, history) = - thread_from_stored_thread(stored_thread, fallback_model_provider, fallback_cwd); - thread.session_id = session_id; - let Some(history) = history else { - return Err(format!( - "thread {thread_id} did not include persisted history after rollback" - )); - }; - populate_thread_turns_from_history(&mut thread, &history.items, /*active_turn*/ None); - thread.status = loaded_status; - Ok(ThreadRollbackResponse { thread }) -} - async fn respond_to_pending_interrupts( thread_state: &Arc>, outgoing: &ThreadScopedOutgoingMessageSender, @@ -2219,11 +2088,11 @@ mod tests { use anyhow::Result; use anyhow::anyhow; use anyhow::bail; - use chrono::Utc; use codex_app_server_protocol::AutoReviewDecisionSource; use codex_app_server_protocol::GuardianApprovalReviewStatus; use codex_app_server_protocol::JSONRPCErrorError; use codex_app_server_protocol::ServerRequest; + use codex_app_server_protocol::ThreadStatus; use codex_app_server_protocol::TurnPlanStepStatus; use codex_login::CodexAuth; use codex_protocol::AgentPath; @@ -2235,11 +2104,8 @@ mod tests { use codex_protocol::items::TurnItem as CoreTurnItem; use codex_protocol::models::FileSystemPermissions as CoreFileSystemPermissions; use codex_protocol::models::NetworkPermissions as CoreNetworkPermissions; - use codex_protocol::models::PermissionProfile; use codex_protocol::plan_tool::PlanItemArg; use codex_protocol::plan_tool::StepStatus; - use codex_protocol::protocol::AgentMessageEvent; - use codex_protocol::protocol::AskForApproval; use codex_protocol::protocol::AuthRecoveryEvent; use codex_protocol::protocol::CreditsSnapshot; use codex_protocol::protocol::EventMsg; @@ -2249,13 +2115,8 @@ mod tests { use codex_protocol::protocol::ItemStartedEvent; use codex_protocol::protocol::RateLimitSnapshot; use codex_protocol::protocol::RateLimitWindow; - use codex_protocol::protocol::SessionSource; use codex_protocol::protocol::TokenUsage; use codex_protocol::protocol::TokenUsageInfo; - use codex_protocol::protocol::UserMessageEvent; - use codex_rollout::RolloutItem; - use codex_thread_store::StoredThread; - use codex_thread_store::StoredThreadHistory; use codex_utils_absolute_path::AbsolutePathBuf; use codex_utils_absolute_path::test_support::PathBufExt; use codex_utils_absolute_path::test_support::test_path_buf; @@ -2296,87 +2157,6 @@ mod tests { Ok(envelope.notification) } - #[test] - fn rollback_response_rebuilds_pathless_thread_from_stored_history() -> Result<()> { - let thread_id = ThreadId::from_string("00000000-0000-0000-0000-000000000789")?; - let created_at = Utc::now(); - let history_items = vec![ - RolloutItem::EventMsg(EventMsg::UserMessage(UserMessageEvent { - client_id: None, - message: "before rollback".to_string(), - images: None, - local_images: Vec::new(), - text_elements: Vec::new(), - ..Default::default() - })), - RolloutItem::EventMsg(EventMsg::AgentMessage(AgentMessageEvent { - message: "after rollback".to_string(), - phase: None, - memory_citation: None, - delivery: None, - questions: None, - })), - ]; - let stored_thread = StoredThread { - originator: None, - thread_id, - extra_config: None, - rollout_path: None, - forked_from_id: None, - parent_thread_id: None, - preview: "fallback preview".to_string(), - name: Some("Rollback thread".to_string()), - model_provider: "openai".to_string(), - model: None, - reasoning_effort: None, - created_at, - updated_at: created_at, - recency_at: created_at, - archived_at: None, - section: None, - section_position: None, - section_entered_at: None, - project_id: None, - daybreak_enabled: None, - cwd: test_path_buf("/tmp").abs().into(), - cli_version: "0.0.0".to_string(), - source: SessionSource::Cli, - history_mode: Default::default(), - thread_source: None, - agent_nickname: None, - agent_role: None, - agent_path: None, - git_info: None, - approval_mode: AskForApproval::OnRequest, - permission_profile: PermissionProfile::read_only(), - token_usage: None, - first_user_message: Some("before rollback".to_string()), - history: Some(StoredThreadHistory { - thread_id, - items: history_items, - }), - }; - let fallback_cwd = test_path_buf("/tmp").abs(); - - let response = thread_rollback_response_from_stored_thread( - stored_thread, - thread_id.to_string(), - "fallback-provider", - &fallback_cwd, - ThreadStatus::NotLoaded, - ) - .expect("rollback response should rebuild from stored history"); - - assert_eq!(response.thread.id, thread_id.to_string()); - assert_eq!(response.thread.path, None); - assert_eq!(response.thread.preview, "fallback preview"); - assert_eq!(response.thread.name.as_deref(), Some("Rollback thread")); - assert_eq!(response.thread.status, ThreadStatus::NotLoaded); - assert_eq!(response.thread.turns.len(), 1); - assert_eq!(response.thread.turns[0].items.len(), 2); - Ok(()) - } - fn turn_complete_event(turn_id: &str) -> TurnCompleteEvent { TurnCompleteEvent { turn_id: turn_id.to_string(), @@ -2485,8 +2265,6 @@ mod tests { self.outgoing.clone(), self.thread_state.clone(), self.thread_watch_manager.clone(), - Arc::new(tokio::sync::Semaphore::new(/*permits*/ 1)), - "test-provider".to_string(), ) .await; } @@ -3330,8 +3108,6 @@ mod tests { outgoing.clone(), Arc::clone(&thread_state), thread_watch_manager.clone(), - Arc::new(tokio::sync::Semaphore::new(/*permits*/ 1)), - "test-provider".to_string(), ) .await; @@ -3372,8 +3148,6 @@ mod tests { outgoing.clone(), Arc::clone(&thread_state), thread_watch_manager.clone(), - Arc::new(tokio::sync::Semaphore::new(/*permits*/ 1)), - "test-provider".to_string(), ) .await; @@ -3453,8 +3227,6 @@ mod tests { outgoing, new_thread_state(), thread_watch_manager.clone(), - Arc::new(tokio::sync::Semaphore::new(/*permits*/ 1)), - "test-provider".to_string(), ) .await; @@ -3542,8 +3314,6 @@ mod tests { outgoing, new_thread_state(), ThreadWatchManager::new(), - Arc::new(tokio::sync::Semaphore::new(/*permits*/ 1)), - "test-provider".to_string(), ) .await; diff --git a/codex-rs/app-server/src/message_processor.rs b/codex-rs/app-server/src/message_processor.rs index be62b731bf..c0d2818bb9 100644 --- a/codex-rs/app-server/src/message_processor.rs +++ b/codex-rs/app-server/src/message_processor.rs @@ -528,7 +528,6 @@ impl MessageProcessor { pending_thread_unloads, thread_state_manager, thread_watch_manager, - thread_list_state_permit, Arc::clone(&skills_watcher), turn_cost_worker.as_ref().map(TurnCostWorker::handle), ); @@ -983,7 +982,6 @@ impl MessageProcessor { ClientRequest::ThreadStart { .. } | ClientRequest::ThreadFork { .. } | ClientRequest::ThreadResume { .. } - | ClientRequest::ThreadRollback { .. } | ClientRequest::ThreadRevert { .. } | ClientRequest::ThreadSettingsUpdate { .. } | ClientRequest::TurnSettingsUpdate { .. } @@ -1449,11 +1447,6 @@ impl MessageProcessor { .thread_background_terminals_terminate(params) .await } - ClientRequest::ThreadRollback { params, .. } => { - self.thread_processor - .thread_rollback(&request_id, params, app_server_client_name.as_deref()) - .await - } ClientRequest::ThreadRevert { params, .. } => { self.thread_processor .thread_revert( diff --git a/codex-rs/app-server/src/outgoing_message.rs b/codex-rs/app-server/src/outgoing_message.rs index ec84a83262..e6803f0b4d 100644 --- a/codex-rs/app-server/src/outgoing_message.rs +++ b/codex-rs/app-server/src/outgoing_message.rs @@ -231,14 +231,6 @@ impl ThreadScopedOutgoingMessageSender { { self.outgoing.send_response(request_id, response).await; } - - pub(crate) async fn send_error( - &self, - request_id: ConnectionRequestId, - error: impl Into, - ) { - self.outgoing.send_error(request_id, error).await; - } } impl OutgoingMessageSender { diff --git a/codex-rs/app-server/src/request_processors.rs b/codex-rs/app-server/src/request_processors.rs index 6ec3567f2f..9e73f535a6 100644 --- a/codex-rs/app-server/src/request_processors.rs +++ b/codex-rs/app-server/src/request_processors.rs @@ -262,7 +262,6 @@ use codex_app_server_protocol::ThreadRealtimeStopResponse; use codex_app_server_protocol::ThreadResumeInitialTurnsPageParams; use codex_app_server_protocol::ThreadResumeParams; use codex_app_server_protocol::ThreadResumeResponse; -use codex_app_server_protocol::ThreadRollbackParams; use codex_app_server_protocol::ThreadSearchOccurrence; use codex_app_server_protocol::ThreadSearchOccurrencesParams; use codex_app_server_protocol::ThreadSearchOccurrencesResponse; diff --git a/codex-rs/app-server/src/request_processors/thread_lifecycle.rs b/codex-rs/app-server/src/request_processors/thread_lifecycle.rs index fbc4d32cf1..71fba6b25e 100644 --- a/codex-rs/app-server/src/request_processors/thread_lifecycle.rs +++ b/codex-rs/app-server/src/request_processors/thread_lifecycle.rs @@ -11,8 +11,6 @@ pub(super) struct ListenerTaskContext { pub(super) outgoing: Arc, pub(super) pending_thread_unloads: Arc>>, pub(super) thread_watch_manager: ThreadWatchManager, - pub(super) thread_list_state_permit: Arc, - pub(super) fallback_model_provider: String, pub(super) codex_home: PathBuf, pub(super) thread_unload_delay: Duration, pub(super) skills_watcher: Arc, @@ -271,8 +269,6 @@ pub(super) async fn ensure_listener_task_running( thread_state_manager, pending_thread_unloads, thread_watch_manager, - thread_list_state_permit, - fallback_model_provider, codex_home, turn_cost_worker, .. @@ -353,8 +349,6 @@ pub(super) async fn ensure_listener_task_running( thread_outgoing, thread_state.clone(), thread_watch_manager.clone(), - thread_list_state_permit.clone(), - fallback_model_provider.clone(), ) .await; if matches!(event.msg, EventMsg::ShutdownComplete) diff --git a/codex-rs/app-server/src/request_processors/thread_processor.rs b/codex-rs/app-server/src/request_processors/thread_processor.rs index f694d03c3b..0b5f502bd8 100644 --- a/codex-rs/app-server/src/request_processors/thread_processor.rs +++ b/codex-rs/app-server/src/request_processors/thread_processor.rs @@ -30,9 +30,6 @@ use std::ops::ControlFlow; pub(super) const THREAD_LIST_DEFAULT_LIMIT: usize = 25; pub(super) const THREAD_LIST_MAX_LIMIT: usize = 100; -const CODEX_TUI_CLIENT_NAME: &str = "codex-tui"; -const THREAD_ROLLBACK_DEPRECATION_SUMMARY: &str = - "thread/rollback is deprecated and will be removed soon"; const PAGINATED_FULL_HISTORY_DEPRECATION_SUMMARY: &str = "Full-history hydration is deprecated for paginated threads; use `excludeTurns: true`, then page with `thread/turns/list` and `thread/items/list`."; const PAGINATED_THREAD_READ_DEPRECATION_SUMMARY: &str = "Full-history hydration is deprecated for paginated threads; omit `includeTurns` or set it to `false`, then page with `thread/turns/list` and `thread/items/list`."; @@ -808,24 +805,6 @@ impl ThreadRequestProcessor { .map(|response| Some(response.into())) } - pub(crate) async fn thread_rollback( - &self, - request_id: &ConnectionRequestId, - params: ThreadRollbackParams, - app_server_client_name: Option<&str>, - ) -> Result, JSONRPCErrorError> { - if app_server_client_name != Some(CODEX_TUI_CLIENT_NAME) { - self.send_deprecation_notice( - request_id.connection_id, - THREAD_ROLLBACK_DEPRECATION_SUMMARY, - ) - .await; - } - self.thread_rollback_inner(request_id, params) - .await - .map(|()| None) - } - async fn send_deprecation_notice(&self, connection_id: ConnectionId, summary: &str) { self.outgoing .send_server_notification_to_connections( @@ -1102,8 +1081,6 @@ impl ThreadRequestProcessor { outgoing: Arc::clone(&self.outgoing), pending_thread_unloads: Arc::clone(&self.pending_thread_unloads), thread_watch_manager: self.thread_watch_manager.clone(), - thread_list_state_permit: self.thread_list_state_permit.clone(), - fallback_model_provider: self.config.model_provider_id.clone(), codex_home: self.config.codex_home.to_path_buf(), thread_unload_delay: self.config.thread_unload_delay, skills_watcher: Arc::clone(&self.skills_watcher), @@ -1234,8 +1211,6 @@ impl ThreadRequestProcessor { outgoing: Arc::clone(&self.outgoing), pending_thread_unloads: Arc::clone(&self.pending_thread_unloads), thread_watch_manager: self.thread_watch_manager.clone(), - thread_list_state_permit: self.thread_list_state_permit.clone(), - fallback_model_provider: self.config.model_provider_id.clone(), codex_home: self.config.codex_home.to_path_buf(), thread_unload_delay: self.config.thread_unload_delay, skills_watcher: Arc::clone(&self.skills_watcher), @@ -2118,14 +2093,6 @@ impl ThreadRequestProcessor { Ok((ThreadUnarchiveResponse { thread }, thread_id)) } - async fn thread_rollback_inner( - &self, - request_id: &ConnectionRequestId, - params: ThreadRollbackParams, - ) -> Result<(), JSONRPCErrorError> { - self.thread_rollback_start(request_id, params).await - } - async fn thread_revert_response( &self, request_id: &ConnectionRequestId, @@ -2353,71 +2320,6 @@ impl ThreadRequestProcessor { }) } - async fn thread_rollback_start( - &self, - request_id: &ConnectionRequestId, - params: ThreadRollbackParams, - ) -> Result<(), JSONRPCErrorError> { - let ThreadRollbackParams { - thread_id, - num_turns, - } = params; - - if num_turns == 0 { - return Err(invalid_request("numTurns must be >= 1")); - } - - let (thread_id, thread) = self.load_thread(&thread_id).await?; - ensure_direct_input_allowed(thread.as_ref()).await?; - if matches!( - thread.config_snapshot().await.history_mode, - ThreadHistoryMode::Paginated - ) { - return Err(invalid_request( - "paginated threads do not support thread/rollback", - )); - } - - let request = request_id.clone(); - let (completion_tx, completion_rx) = tokio::sync::oneshot::channel(); - - let rollback_already_in_progress = { - let thread_state = self.thread_state_manager.thread_state(thread_id).await; - let mut thread_state = thread_state.lock().await; - if thread_state.pending_rollbacks.is_some() { - true - } else { - thread_state.pending_rollbacks = Some((request, completion_tx)); - false - } - }; - if rollback_already_in_progress { - return Err(invalid_request( - "rollback already in progress for this thread", - )); - } - - if let Err(err) = self - .submit_core_op( - request_id, - thread.as_ref(), - Op::ThreadRollback { num_turns }, - ) - .await - { - // No ThreadRollback event will arrive if an error occurs. - // Clean up and reply immediately. - let thread_state = self.thread_state_manager.thread_state(thread_id).await; - thread_state.lock().await.pending_rollbacks = None; - - return Err(internal_error(format!("failed to start rollback: {err}"))); - } - // The listener drops the sender after queuing the response, including errors. - // Keep the RPC's drain admission alive until then, without holding thread state. - let _ = completion_rx.await; - Ok(()) - } - async fn thread_compact_start_inner( &self, request_id: &ConnectionRequestId, diff --git a/codex-rs/app-server/src/request_processors/turn_processor.rs b/codex-rs/app-server/src/request_processors/turn_processor.rs index f2a84fe623..78232498a5 100644 --- a/codex-rs/app-server/src/request_processors/turn_processor.rs +++ b/codex-rs/app-server/src/request_processors/turn_processor.rs @@ -85,7 +85,6 @@ pub(crate) struct TurnRequestProcessor { pending_thread_unloads: Arc>>, thread_state_manager: ThreadStateManager, thread_watch_manager: ThreadWatchManager, - thread_list_state_permit: Arc, skills_watcher: Arc, turn_cost_worker: Option, } @@ -149,7 +148,6 @@ impl TurnRequestProcessor { pending_thread_unloads: Arc>>, thread_state_manager: ThreadStateManager, thread_watch_manager: ThreadWatchManager, - thread_list_state_permit: Arc, skills_watcher: Arc, turn_cost_worker: Option, ) -> Self { @@ -166,7 +164,6 @@ impl TurnRequestProcessor { pending_thread_unloads, thread_state_manager, thread_watch_manager, - thread_list_state_permit, skills_watcher, turn_cost_worker, } @@ -1657,8 +1654,6 @@ impl TurnRequestProcessor { outgoing: Arc::clone(&self.outgoing), pending_thread_unloads: Arc::clone(&self.pending_thread_unloads), thread_watch_manager: self.thread_watch_manager.clone(), - thread_list_state_permit: self.thread_list_state_permit.clone(), - fallback_model_provider: self.config.model_provider_id.clone(), codex_home: self.config.codex_home.to_path_buf(), thread_unload_delay: self.config.thread_unload_delay, skills_watcher: Arc::clone(&self.skills_watcher), diff --git a/codex-rs/app-server/src/thread_state.rs b/codex-rs/app-server/src/thread_state.rs index dcba292310..14012f3f66 100644 --- a/codex-rs/app-server/src/thread_state.rs +++ b/codex-rs/app-server/src/thread_state.rs @@ -98,7 +98,6 @@ pub(crate) struct TurnSummary { #[derive(Default)] pub(crate) struct ThreadState { pub(crate) pending_interrupts: PendingInterruptQueue, - pub(crate) pending_rollbacks: Option<(ConnectionRequestId, oneshot::Sender<()>)>, pub(crate) turn_summary: TurnSummary, pub(crate) last_terminal_turn_id: Option, /// Lets an internal runtime replacement wait until the old listener has processed Core's @@ -146,7 +145,6 @@ impl ThreadState { let _ = cancel_tx.send(()); } self.shutdown_drain_waiter = None; - self.pending_rollbacks = None; self.listener_command_tx = None; self.current_turn_history.reset(); self.listener_thread = None; @@ -251,28 +249,6 @@ mod tests { use codex_utils_absolute_path::AbsolutePathBuf; use pretty_assertions::assert_eq; - #[test] - fn clear_listener_releases_pending_rollback() { - let (completion_tx, mut completion_rx) = oneshot::channel(); - let mut state = ThreadState { - pending_rollbacks: Some(( - ConnectionRequestId { - connection_id: ConnectionId(1), - request_id: RequestId::Integer(1), - }, - completion_tx, - )), - ..Default::default() - }; - - state.clear_listener(); - - assert_eq!( - completion_rx.try_recv(), - Err(oneshot::error::TryRecvError::Closed) - ); - } - #[test] fn note_thread_settings_reports_only_effective_changes() { let mut state = ThreadState::default(); diff --git a/codex-rs/app-server/tests/common/test_app_server.rs b/codex-rs/app-server/tests/common/test_app_server.rs index 568916e93b..8a0a2fefe3 100644 --- a/codex-rs/app-server/tests/common/test_app_server.rs +++ b/codex-rs/app-server/tests/common/test_app_server.rs @@ -104,7 +104,6 @@ use codex_app_server_protocol::ThreadRealtimeListVoicesParams; use codex_app_server_protocol::ThreadRealtimeStartParams; use codex_app_server_protocol::ThreadRealtimeStopParams; use codex_app_server_protocol::ThreadResumeParams; -use codex_app_server_protocol::ThreadRollbackParams; use codex_app_server_protocol::ThreadSearchOccurrencesParams; use codex_app_server_protocol::ThreadSearchParams; use codex_app_server_protocol::ThreadSectionMoveParams; @@ -659,15 +658,6 @@ impl TestAppServer { self.send_request("thread/shellCommand", params).await } - /// Send a `thread/rollback` JSON-RPC request. - pub async fn send_thread_rollback_request( - &mut self, - params: ThreadRollbackParams, - ) -> anyhow::Result { - let params = Some(serde_json::to_value(params)?); - self.send_request("thread/rollback", params).await - } - /// Send a `thread/list` JSON-RPC request. pub async fn send_thread_list_request( &mut self, diff --git a/codex-rs/app-server/tests/suite/v2/connection_handling_websocket_unix.rs b/codex-rs/app-server/tests/suite/v2/connection_handling_websocket_unix.rs index 0575a4e1f2..4bc3ab9993 100644 --- a/codex-rs/app-server/tests/suite/v2/connection_handling_websocket_unix.rs +++ b/codex-rs/app-server/tests/suite/v2/connection_handling_websocket_unix.rs @@ -97,10 +97,6 @@ async fn websocket_transport_ctrl_c_waits_for_running_turn_before_exit() -> Resu "turn/settings/update", json!({"threadId": thread_id, "turnId": "unused", "model": "other"}), ), - ( - "thread/rollback", - json!({"threadId": thread_id, "numTurns": 1}), - ), ( "thread/revert", json!({"threadId": thread_id, "beforeTurnId": "unused"}), diff --git a/codex-rs/app-server/tests/suite/v2/git_attribution.rs b/codex-rs/app-server/tests/suite/v2/git_attribution.rs index 5925dd3d4f..87a9c824e9 100644 --- a/codex-rs/app-server/tests/suite/v2/git_attribution.rs +++ b/codex-rs/app-server/tests/suite/v2/git_attribution.rs @@ -17,8 +17,6 @@ use codex_app_server_protocol::RequestId; use codex_app_server_protocol::ThreadHistoryMode; use codex_app_server_protocol::ThreadResumeParams; use codex_app_server_protocol::ThreadResumeResponse; -use codex_app_server_protocol::ThreadRollbackParams; -use codex_app_server_protocol::ThreadRollbackResponse; use codex_app_server_protocol::ThreadStartParams; use codex_app_server_protocol::ThreadStartResponse; use codex_app_server_protocol::TurnStartParams; @@ -79,7 +77,7 @@ async fn git_attribution_follows_authenticated_workspace_policy() -> Result<()> "Recovered", "Cached", "After switch", - "After rollback", + "After switching back", ] .into_iter() .map(create_final_assistant_message_sse_response) @@ -166,14 +164,6 @@ async fn git_attribution_follows_authenticated_workspace_policy() -> Result<()> let _: LoginAccountResponse = read_response(&mut app_server, request_id).await?; run_turn(&mut app_server, &thread.id, "Turn after workspace switch").await?; - let request_id = app_server - .send_thread_rollback_request(ThreadRollbackParams { - thread_id: thread.id.clone(), - num_turns: 1, - }) - .await?; - let _: ThreadRollbackResponse = read_response(&mut app_server, request_id).await?; - let request_id = app_server .send_chatgpt_auth_tokens_login_request( "e30.e30.c2ln".to_string(), @@ -182,13 +172,13 @@ async fn git_attribution_follows_authenticated_workspace_policy() -> Result<()> ) .await?; let _: LoginAccountResponse = read_response(&mut app_server, request_id).await?; - run_turn(&mut app_server, &thread.id, "Turn after rollback").await?; + run_turn(&mut app_server, &thread.id, "Turn after switching back").await?; let requests = response_mock.requests(); assert_eq!(requests.len(), 5); for (request, expected) in requests .into_iter() - .zip([(0, 0), (1, 0), (1, 0), (1, 1), (1, 0)]) + .zip([(0, 0), (1, 0), (1, 0), (1, 1), (2, 1)]) { let developer_text = request.message_input_texts("developer").join("\n"); assert_eq!( diff --git a/codex-rs/app-server/tests/suite/v2/guardian_v2.rs b/codex-rs/app-server/tests/suite/v2/guardian_v2.rs index ea22b528a2..bc2d3685ac 100644 --- a/codex-rs/app-server/tests/suite/v2/guardian_v2.rs +++ b/codex-rs/app-server/tests/suite/v2/guardian_v2.rs @@ -36,12 +36,9 @@ use codex_app_server_protocol::ThreadCompactStartParams; use codex_app_server_protocol::ThreadCompactStartResponse; use codex_app_server_protocol::ThreadForkParams; use codex_app_server_protocol::ThreadForkResponse; -use codex_app_server_protocol::ThreadHistoryMode; use codex_app_server_protocol::ThreadItem; use codex_app_server_protocol::ThreadResumeParams; use codex_app_server_protocol::ThreadResumeResponse; -use codex_app_server_protocol::ThreadRollbackParams; -use codex_app_server_protocol::ThreadRollbackResponse; use codex_app_server_protocol::ThreadStartParams; use codex_app_server_protocol::TurnCompletedNotification; use codex_app_server_protocol::TurnSettingsUpdateParams; @@ -247,7 +244,6 @@ enum ThreadLifecycle { UserInputHookBlocked, Resume, Fork, - RootRollback, RootRestriction, RootRestrictionDuringClassification, RootTrustedSkill, @@ -261,8 +257,7 @@ impl ThreadLifecycle { fn uses_root_worker(self) -> bool { matches!( self, - Self::RootRollback - | Self::RootRestriction + Self::RootRestriction | Self::RootRestrictionDuringClassification | Self::RootTrustedSkill | Self::RootUserInputRestriction @@ -914,7 +909,6 @@ async fn guardian_v2_routes_scoped_tool_approvals( | ThreadLifecycle::UserInputEmpty | ThreadLifecycle::UserInputHookFeedback | ThreadLifecycle::UserInputHookBlocked - | ThreadLifecycle::RootRollback | ThreadLifecycle::RootRestriction | ThreadLifecycle::RootRestrictionDuringClassification | ThreadLifecycle::RootTrustedSkill @@ -963,7 +957,6 @@ async fn guardian_v2_routes_scoped_tool_approvals( | ThreadLifecycle::UserInputEmpty | ThreadLifecycle::UserInputHookFeedback | ThreadLifecycle::UserInputHookBlocked - | ThreadLifecycle::RootRollback | ThreadLifecycle::RootRestriction | ThreadLifecycle::RootRestrictionDuringClassification | ThreadLifecycle::RootTrustedSkill @@ -975,8 +968,6 @@ async fn guardian_v2_routes_scoped_tool_approvals( .start_thread(ThreadStartParams { approval_policy: Some(AskForApproval::OnRequest), approvals_reviewer: Some(requested_reviewer), - history_mode: matches!(lifecycle, ThreadLifecycle::RootRollback) - .then_some(ThreadHistoryMode::Legacy), ..Default::default() }) .await?; @@ -1560,17 +1551,6 @@ async fn guardian_v2_routes_scoped_tool_approvals( && (lifecycle.uses_root_worker() || matches!(lifecycle, ThreadLifecycle::RootUserRestriction)) { - if matches!(lifecycle, ThreadLifecycle::RootRollback) { - let rollback_id = app_server - .send_thread_rollback_request(ThreadRollbackParams { - thread_id: thread_id.clone(), - num_turns: 1, - }) - .await?; - let _: ThreadRollbackResponse = - timeout(TIMEOUT, app_server.read_response(rollback_id)).await??; - } - if lifecycle.has_root_user_input() { submit_user_input_response( &mut app_server, @@ -2548,7 +2528,6 @@ async fn forked_thread_ignores_persisted_guardian_score() -> Result<()> { .await } -#[test_case(ThreadLifecycle::RootRollback; "worker_root_rollback")] #[test_case(ThreadLifecycle::RootRestriction; "worker_root_restriction")] #[test_case(ThreadLifecycle::RootUserRestriction; "root_user_restriction")] #[tokio::test(flavor = "multi_thread", worker_threads = 2)] diff --git a/codex-rs/app-server/tests/suite/v2/guardian_v2_history_tests.rs b/codex-rs/app-server/tests/suite/v2/guardian_v2_history_tests.rs index ca1454f1d8..6f934fab44 100644 --- a/codex-rs/app-server/tests/suite/v2/guardian_v2_history_tests.rs +++ b/codex-rs/app-server/tests/suite/v2/guardian_v2_history_tests.rs @@ -1,4 +1,4 @@ -//! Exercises both reviewers' evidence delivery through real compaction and rollback. +//! Exercises both reviewers' evidence delivery through real compaction and resume. use std::sync::Arc; use std::sync::Mutex; @@ -24,8 +24,6 @@ use codex_app_server_protocol::ThreadCompactStartResponse; use codex_app_server_protocol::ThreadHistoryMode; use codex_app_server_protocol::ThreadResumeParams; use codex_app_server_protocol::ThreadResumeResponse; -use codex_app_server_protocol::ThreadRollbackParams; -use codex_app_server_protocol::ThreadRollbackResponse; use codex_app_server_protocol::ThreadStartParams; use codex_app_server_protocol::TurnCompletedNotification; use codex_app_server_protocol::TurnStartParams; @@ -108,7 +106,7 @@ enum ReviewCheckpoint { #[test_case(ContextPath::Legacy, CheckpointReuse::Enabled, Some("matching"), Some("matching"), 140, EvidenceSize::Normal, ReviewCheckpoint::Valid; "legacy source call evicted")] #[test_case(ContextPath::Legacy, CheckpointReuse::Enabled, Some("matching"), Some("matching"), 0, EvidenceSize::OversizedAnswer, ReviewCheckpoint::Valid; "legacy answer truncation")] #[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollback( +async fn guardians_retain_evidence_after_compaction_and_resume( context_path: ContextPath, checkpoint_reuse: CheckpointReuse, parent_hash: Option<&str>, @@ -334,8 +332,6 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac restriction.as_str(), "Recheck the repository.", "Inspect after resume.", - "Inspect after partial rollback.", - "Inspect a different repository.", ] .into_iter() .enumerate() @@ -368,15 +364,6 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac timeout(TIMEOUT, app_server.read_notification("turn/completed")).await??; assert_eq!(completed.turn.status, TurnStatus::Completed); assert_eq!(compact_requests.lock().expect("request log lock").len(), 1); - } else if index >= 3 { - let id = app_server - .send_thread_rollback_request(ThreadRollbackParams { - thread_id: thread_id.clone(), - num_turns: if index == 3 { 1 } else { 3 }, - }) - .await?; - let _: ThreadRollbackResponse = - timeout(TIMEOUT, app_server.read_response(id)).await??; } let id = app_server @@ -492,7 +479,7 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac } continue; } - if requires_sync && (1..=3).contains(&index) { + if requires_sync && index > 0 { let reviews = review_requests.lock().expect("request log lock"); assert_eq!( reviews.len(), @@ -513,12 +500,6 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac "current user input missing from sync review: {text}" ); } - if index == 3 { - assert!( - !text.contains("Inspect after resume."), - "rolled-back user input remains in sync review: {text}" - ); - } assert!(text.contains(USER_INPUT_RESTRICTION)); assert!(text.contains("TRUSTED USER ANSWERS START")); assert!(text.contains("TRANSCRIPT START")); @@ -575,11 +556,8 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac let review = &reviews[index]; let sync_input = review["input"].as_array().expect("request input array"); let async_input = request["input"].as_array().expect("request input array"); - assert_eq!(sync_input.contains(&checkpoint), (1..=3).contains(&index)); - assert_eq!( - async_input.contains(&checkpoint), - (1..=3).contains(&index) && compatible - ); + assert_eq!(sync_input.contains(&checkpoint), index > 0); + assert_eq!(async_input.contains(&checkpoint), index > 0 && compatible); let sync_text = sync_input .iter() .filter(|item| item["role"] == "user") @@ -591,14 +569,6 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac sync_text.contains(prompt), "current user input missing from sync review: {sync_text}" ); - if index == 3 { - for (consumer, text) in [("sync", sync_text.as_str()), ("async", transcript)] { - assert!( - !text.contains("Inspect after resume."), - "rolled-back user input remains in {consumer} review: {text}" - ); - } - } if index == 0 { let input = parent[2]["input"].as_array().expect("request input array"); let output = input @@ -615,12 +585,12 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac .expect("request input array"); let parent_input = serde_json::to_string(parent_items)?; // V2 keeps bounded user history while replacing old tool output with a checkpoint. - assert_eq!(parent_input.contains(RESTRICTION), index <= 3); + assert!(parent_input.contains(RESTRICTION)); assert!(!parent_input.contains(EVIDENCE)); assert!(!parent_items.iter().any(|item| { item["type"] == "function_call_output" && item["call_id"] == "inspect-1" })); - if index <= 3 { + { assert!(sync_text.contains(RESTRICTION)); if matches!(context_path, ContextPath::ThreadOwned) { assert!( @@ -678,17 +648,10 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac assert!(!transcript.contains("tool request_user_input call:")); } } - } else { - assert!(!sync_text.contains(RESTRICTION)); - assert!(!sync_text.contains(EVIDENCE)); - assert!(!transcript.contains(RESTRICTION)); - assert!(!transcript.contains(EVIDENCE)); - assert!(!transcript.contains("Recheck the repository.")); - assert!(!transcript.contains("\"echoed\":\"current inspection\"")); } } for (consumer, text) in [("async", &content), ("sync", &sync_text)] { - if index < 4 && (matches!(context_path, ContextPath::ThreadOwned) || index == 0) { + if matches!(context_path, ContextPath::ThreadOwned) || index == 0 { let answers = text .split_once(">>> TRUSTED USER ANSWERS START") .unwrap_or_else(|| { @@ -715,9 +678,6 @@ async fn guardians_retain_evidence_after_compaction_and_discard_it_after_rollbac }, } } else { - if index == 4 { - assert!(!text.contains(USER_INPUT_RESTRICTION)); - } assert!(!text.contains(">>> TRUSTED USER ANSWERS START")); } } diff --git a/codex-rs/app-server/tests/suite/v2/mod.rs b/codex-rs/app-server/tests/suite/v2/mod.rs index 0c79256813..d545561e74 100644 --- a/codex-rs/app-server/tests/suite/v2/mod.rs +++ b/codex-rs/app-server/tests/suite/v2/mod.rs @@ -126,7 +126,6 @@ mod thread_queue; mod thread_read; mod thread_resume; mod thread_revert; -mod thread_rollback; mod thread_sections; mod thread_settings_update; mod thread_shell_command; diff --git a/codex-rs/app-server/tests/suite/v2/thread_rollback.rs b/codex-rs/app-server/tests/suite/v2/thread_rollback.rs deleted file mode 100644 index 48c48d8ed1..0000000000 --- a/codex-rs/app-server/tests/suite/v2/thread_rollback.rs +++ /dev/null @@ -1,343 +0,0 @@ -use anyhow::Result; -use app_test_support::MockResponsesConfig; -use app_test_support::TestAppServer; -use app_test_support::create_final_assistant_message_sse_response; -use app_test_support::create_mock_responses_server_repeating_assistant; -use app_test_support::create_mock_responses_server_sequence_unchecked; -use app_test_support::to_response; -use codex_app_server_protocol::ClientInfo; -use codex_app_server_protocol::DeprecationNoticeNotification; -use codex_app_server_protocol::JSONRPCError; -use codex_app_server_protocol::JSONRPCMessage; -use codex_app_server_protocol::JSONRPCResponse; -use codex_app_server_protocol::RequestId; -use codex_app_server_protocol::ThreadHistoryMode; -use codex_app_server_protocol::ThreadItem; -use codex_app_server_protocol::ThreadResumeParams; -use codex_app_server_protocol::ThreadResumeResponse; -use codex_app_server_protocol::ThreadRollbackParams; -use codex_app_server_protocol::ThreadRollbackResponse; -use codex_app_server_protocol::ThreadStartParams; -use codex_app_server_protocol::ThreadStartResponse; -use codex_app_server_protocol::ThreadStatus; -use codex_app_server_protocol::TurnStartParams; -use codex_app_server_protocol::UserInput as V2UserInput; -use codex_protocol::openai_models::ReasoningEffort; -use pretty_assertions::assert_eq; -use serde_json::Value; -use serde_json::json; -use tempfile::TempDir; -use tokio::time::timeout; - -const DEFAULT_READ_TIMEOUT: std::time::Duration = std::time::Duration::from_secs(10); - -#[tokio::test] -async fn thread_rollback_rejects_paginated_thread() -> Result<()> { - let server = create_mock_responses_server_repeating_assistant("Done").await; - let codex_home = TempDir::new()?; - MockResponsesConfig::new(&server.uri()).write(codex_home.path())?; - - let mut mcp = TestAppServer::builder() - .with_codex_home(codex_home.path()) - .without_auto_env() - .build() - .await?; - timeout(DEFAULT_READ_TIMEOUT, mcp.initialize()).await??; - let start_id = mcp - .send_thread_start_request(ThreadStartParams { - history_mode: Some(ThreadHistoryMode::Paginated), - ..Default::default() - }) - .await?; - let start_resp: JSONRPCResponse = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_response_message(RequestId::Integer(start_id)), - ) - .await??; - let ThreadStartResponse { thread, .. } = to_response(start_resp)?; - - let rollback_id = mcp - .send_thread_rollback_request(ThreadRollbackParams { - thread_id: thread.id, - num_turns: 1, - }) - .await?; - let rollback_err: JSONRPCError = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_error_message(RequestId::Integer(rollback_id)), - ) - .await??; - assert_eq!(rollback_err.error.code, -32600); - assert_eq!( - rollback_err.error.message, - "paginated threads do not support thread/rollback" - ); - - Ok(()) -} - -#[tokio::test] -async fn thread_rollback_does_not_emit_deprecation_notice_to_codex_tui() -> Result<()> { - let codex_home = TempDir::new()?; - let mut mcp = TestAppServer::builder() - .with_codex_home(codex_home.path()) - .build() - .await?; - let initialized = timeout( - DEFAULT_READ_TIMEOUT, - mcp.initialize_with_client_info(ClientInfo { - name: "codex-tui".to_string(), - title: None, - version: "0.1.0".to_string(), - }), - ) - .await??; - let JSONRPCMessage::Response(_) = initialized else { - panic!("expected initialize response, got {initialized:?}"); - }; - mcp.clear_message_buffer(); - - let rollback_id = mcp - .send_thread_rollback_request(ThreadRollbackParams { - thread_id: "00000000-0000-0000-0000-000000000001".to_string(), - num_turns: 1, - }) - .await?; - loop { - let message = timeout(DEFAULT_READ_TIMEOUT, mcp.read_next_message()).await??; - match message { - JSONRPCMessage::Notification(notification) => { - assert_ne!(notification.method, "deprecationNotice"); - } - JSONRPCMessage::Error(error) if error.id == RequestId::Integer(rollback_id) => { - break; - } - message => { - panic!("expected rollback error response, got {message:?}"); - } - } - } - - Ok(()) -} - -#[tokio::test] -async fn thread_rollback_drops_last_turns_and_persists_to_rollout() -> Result<()> { - // Three Codex turns hit the mock model (session start + two turn/start calls). - let responses = vec![ - create_final_assistant_message_sse_response("Done")?, - create_final_assistant_message_sse_response("Done")?, - create_final_assistant_message_sse_response("Done")?, - ]; - let server = create_mock_responses_server_sequence_unchecked(responses).await; - - let codex_home = TempDir::new()?; - MockResponsesConfig::new(&server.uri()).write(codex_home.path())?; - - let mut mcp = TestAppServer::builder() - .with_codex_home(codex_home.path()) - .build() - .await?; - timeout(DEFAULT_READ_TIMEOUT, mcp.initialize()).await??; - - // Start a thread. - let start_id = mcp - .send_thread_start_request_with_auto_env(ThreadStartParams { - model: Some("mock-model".to_string()), - history_mode: Some(ThreadHistoryMode::Legacy), - ..Default::default() - }) - .await?; - let start_resp: JSONRPCResponse = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_response_message(RequestId::Integer(start_id)), - ) - .await??; - let ThreadStartResponse { thread, .. } = to_response::(start_resp)?; - - // Two turns. - let first_text = "First"; - let turn1_id = mcp - .send_turn_start_request(TurnStartParams { - thread_id: thread.id.clone(), - client_user_message_id: None, - input: vec![V2UserInput::Text { - text: first_text.to_string(), - text_elements: Vec::new(), - }], - ..Default::default() - }) - .await?; - let _turn1_resp: JSONRPCResponse = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_response_message(RequestId::Integer(turn1_id)), - ) - .await??; - let _completed1 = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_notification_message("turn/completed"), - ) - .await??; - - let turn2_id = mcp - .send_turn_start_request(TurnStartParams { - thread_id: thread.id.clone(), - client_user_message_id: None, - input: vec![V2UserInput::Text { - text: "Second".to_string(), - text_elements: Vec::new(), - }], - ..Default::default() - }) - .await?; - let _turn2_resp: JSONRPCResponse = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_response_message(RequestId::Integer(turn2_id)), - ) - .await??; - let _completed2 = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_notification_message("turn/completed"), - ) - .await??; - drop(mcp); - let mut mcp = TestAppServer::builder() - .with_codex_home(codex_home.path()) - .build_initialized() - .await?; - let resume_id = mcp - .send_thread_resume_request(ThreadResumeParams { - thread_id: thread.id.clone(), - model: Some("gpt-5.2".to_string()), - config: Some([("model_reasoning_effort".to_string(), json!("high"))].into()), - ..Default::default() - }) - .await?; - let ThreadResumeResponse { thread, .. } = - timeout(DEFAULT_READ_TIMEOUT, mcp.read_response(resume_id)).await??; - // Drain the resume snapshots before checking rollback notification ordering. - timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_notification_message("thread/goal/cleared"), - ) - .await??; - mcp.clear_message_buffer(); - - // Roll back the last turn. - let rollback_id = mcp - .send_thread_rollback_request(ThreadRollbackParams { - thread_id: thread.id.clone(), - num_turns: 1, - }) - .await?; - // Pipeline resume while the listener may still be handling rollback. Waiting for - // its response must not retain the thread-list permit needed by that listener. - let pipelined_resume_id = mcp - .send_thread_resume_request(ThreadResumeParams { - thread_id: thread.id.clone(), - exclude_turns: true, - ..Default::default() - }) - .await?; - let deprecation_notice = timeout(DEFAULT_READ_TIMEOUT, mcp.read_next_message()).await??; - let JSONRPCMessage::Notification(deprecation_notice) = deprecation_notice else { - panic!("thread/rollback should emit deprecationNotice before its response"); - }; - assert_eq!(deprecation_notice.method, "deprecationNotice"); - let deprecation_notice: DeprecationNoticeNotification = serde_json::from_value( - deprecation_notice - .params - .expect("deprecationNotice params should be present"), - )?; - assert_eq!( - deprecation_notice, - DeprecationNoticeNotification { - summary: "thread/rollback is deprecated and will be removed soon".to_string(), - details: None, - } - ); - let rollback_resp: JSONRPCResponse = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_response_message(RequestId::Integer(rollback_id)), - ) - .await??; - let rollback_result = rollback_resp.result.clone(); - let ThreadRollbackResponse { - thread: rolled_back_thread, - } = to_response::(rollback_resp)?; - - // Wire contract: thread title field is `name`, serialized as null when unset. - let thread_json = rollback_result - .get("thread") - .and_then(Value::as_object) - .expect("thread/rollback result.thread must be an object"); - assert_eq!(rolled_back_thread.name, None); - assert_eq!(rolled_back_thread.session_id, thread.session_id); - assert_eq!( - thread_json.get("name"), - Some(&Value::Null), - "thread/rollback must serialize `name: null` when unset" - ); - assert_eq!( - thread_json.get("sessionId").and_then(Value::as_str), - Some(thread.session_id.as_str()) - ); - - assert_eq!(rolled_back_thread.turns.len(), 1); - assert_eq!(rolled_back_thread.status, ThreadStatus::Idle); - assert_eq!( - ( - rolled_back_thread.model.as_deref(), - rolled_back_thread.reasoning_effort - ), - (Some("gpt-5.2"), Some(ReasoningEffort::High)) - ); - assert_eq!(rolled_back_thread.turns[0].items.len(), 2); - match &rolled_back_thread.turns[0].items[0] { - ThreadItem::UserMessage { content, .. } => { - assert_eq!( - content, - &vec![V2UserInput::Text { - text: first_text.to_string(), - text_elements: Vec::new(), - }] - ); - } - other => panic!("expected user message item, got {other:?}"), - } - - let _: ThreadResumeResponse = - timeout(DEFAULT_READ_TIMEOUT, mcp.read_response(pipelined_resume_id)).await??; - - // Resume after rollback completes to verify the pruned history. - let resume_id = mcp - .send_thread_resume_request(ThreadResumeParams { - thread_id: thread.id, - ..Default::default() - }) - .await?; - let resume_resp: JSONRPCResponse = timeout( - DEFAULT_READ_TIMEOUT, - mcp.read_stream_until_response_message(RequestId::Integer(resume_id)), - ) - .await??; - let ThreadResumeResponse { thread, .. } = to_response::(resume_resp)?; - - assert_eq!(thread.turns.len(), 1); - assert_eq!(thread.status, ThreadStatus::Idle); - assert_eq!(thread.turns[0].items.len(), 2); - match &thread.turns[0].items[0] { - ThreadItem::UserMessage { content, .. } => { - assert_eq!( - content, - &vec![V2UserInput::Text { - text: first_text.to_string(), - text_elements: Vec::new(), - }] - ); - } - other => panic!("expected user message item, got {other:?}"), - } - - Ok(()) -} diff --git a/codex-rs/app-server/tests/suite/v2/turn_start.rs b/codex-rs/app-server/tests/suite/v2/turn_start.rs index c622f1a91f..a8881ddd7e 100644 --- a/codex-rs/app-server/tests/suite/v2/turn_start.rs +++ b/codex-rs/app-server/tests/suite/v2/turn_start.rs @@ -4594,7 +4594,6 @@ async fn direct_input_to_multi_agent_v2_subagent_is_rejected( "turn/settings/update", json!({"turnId": "any-child-turn", "model": "gpt-5.4"}), ), - ("thread/rollback", json!({"numTurns": 1})), ("thread/revert", json!({"beforeTurnId": "any-child-turn"})), ( "review/start", diff --git a/codex-rs/core/src/context_manager/history.rs b/codex-rs/core/src/context_manager/history.rs index 799b9eb6a7..f9ad849516 100644 --- a/codex-rs/core/src/context_manager/history.rs +++ b/codex-rs/core/src/context_manager/history.rs @@ -522,7 +522,7 @@ impl ContextManager { /// Instruction turns are history messages that should behave like a new prompt boundary: /// ordinary user messages and structured assistant inter-agent instructions. /// - /// This mirrors thread-rollback semantics: + /// Used only to replay historical rollback markers when reconstructing a saved rollout: /// - `num_turns == 0` is a no-op /// - if there are no user turns, this is a no-op /// - if `num_turns` exceeds the number of user turns, all user turns are dropped while diff --git a/codex-rs/core/src/rollout_budget.rs b/codex-rs/core/src/rollout_budget.rs index cb4b9f8bd4..d66b778fa8 100644 --- a/codex-rs/core/src/rollout_budget.rs +++ b/codex-rs/core/src/rollout_budget.rs @@ -109,14 +109,6 @@ impl RolloutBudget { ); } - /// Forces the next sampling request for `thread_id` to restate the current remainder. - pub(crate) fn rearm_reminder(&self, thread_id: ThreadId) { - let Some(mut state) = self.lock() else { - return; - }; - state.deliveries.remove(&thread_id); - } - fn lock(&self) -> Option> { self.state.get().map(|state| { state diff --git a/codex-rs/core/src/session/handlers.rs b/codex-rs/core/src/session/handlers.rs index cf173b4688..8c43908eee 100644 --- a/codex-rs/core/src/session/handlers.rs +++ b/codex-rs/core/src/session/handlers.rs @@ -17,15 +17,12 @@ use crate::session::turn_input; use crate::config::Config; use crate::context::ContextualUserFragment; use crate::context::GuardianApprovedAction; -use crate::context::NodeReplReviewEvidence; use crate::review_prompts::resolve_review_request; use crate::session::spawn_review_thread; -use crate::state::ReasoningEffortPin; use crate::tasks::CompactTask; use crate::tasks::UserShellCommandMode; use crate::tasks::UserShellCommandTask; use crate::tasks::execute_user_shell_command; -use codex_history::RolloutItem; use codex_protocol::protocol::CodexErrorInfo; use codex_protocol::protocol::ErrorEvent; use codex_protocol::protocol::Event; @@ -39,7 +36,6 @@ use codex_protocol::protocol::RealtimeVoicesList; use codex_protocol::protocol::ReviewDecision; use codex_protocol::protocol::ReviewRequest; use codex_protocol::protocol::ThreadMemoryMode; -use codex_protocol::protocol::ThreadRolledBackEvent; use codex_protocol::protocol::TurnAbortReason; use codex_protocol::protocol::WarningEvent; use codex_protocol::request_permissions::RequestPermissionsResponse; @@ -252,129 +248,6 @@ pub async fn compact(sess: &Arc, sub_id: String) { sess.spawn_task(turn_context, Vec::new(), CompactTask).await; } -pub async fn thread_rollback(sess: &Arc, sub_id: String, num_turns: u32) { - if num_turns == 0 { - sess.send_event_raw(Event { - id: sub_id, - msg: EventMsg::Error(ErrorEvent { - misalignment: None, - message: "num_turns must be >= 1".to_string(), - codex_error_info: Some(CodexErrorInfo::ThreadRollbackFailed), - }), - }) - .await; - return; - } - - let has_active_turn = { sess.active_turn.lock().await.is_some() }; - if has_active_turn { - sess.send_event_raw(Event { - id: sub_id, - msg: EventMsg::Error(ErrorEvent { - misalignment: None, - message: "Cannot rollback while a turn is in progress.".to_string(), - codex_error_info: Some(CodexErrorInfo::ThreadRollbackFailed), - }), - }) - .await; - return; - } - - let turn_context = sess - .new_turn_with_default_settings(sub_id, Default::default()) - .await; - let live_thread = match sess.live_thread_for_persistence("rollback thread") { - Ok(live_thread) => live_thread, - Err(_) => { - sess.send_event_raw(Event { - id: turn_context.sub_id.clone(), - msg: EventMsg::Error(ErrorEvent { - misalignment: None, - message: "thread rollback requires persisted thread history".to_string(), - codex_error_info: Some(CodexErrorInfo::ThreadRollbackFailed), - }), - }) - .await; - return; - } - }; - if let Err(err) = live_thread.flush().await { - sess.send_event_raw(Event { - id: turn_context.sub_id.clone(), - msg: EventMsg::Error(ErrorEvent { - misalignment: None, - message: format!("failed to flush thread persistence for rollback replay: {err}"), - codex_error_info: Some(CodexErrorInfo::ThreadRollbackFailed), - }), - }) - .await; - return; - } - - let stored_history = match live_thread.load_history(/*include_archived*/ false).await { - Ok(history) => history, - Err(err) => { - sess.send_event_raw(Event { - id: turn_context.sub_id.clone(), - msg: EventMsg::Error(ErrorEvent { - misalignment: None, - message: format!("failed to load thread history for rollback replay: {err}"), - codex_error_info: Some(CodexErrorInfo::ThreadRollbackFailed), - }), - }) - .await; - return; - } - }; - - let rollback_event = ThreadRolledBackEvent { num_turns }; - let rollback_msg = EventMsg::ThreadRolledBack(rollback_event.clone()); - let replay_items = stored_history - .items - .into_iter() - .chain(std::iter::once(RolloutItem::EventMsg(rollback_msg.clone()))) - .collect::>(); - sess.apply_rollout_reconstruction(turn_context.as_ref(), replay_items.as_slice()) - .await; - { - let mut state = sess.state.lock().await; - // Keep the baseline while startup prewarm is retained for the first turn, - // including when its task has not established the pin yet. - if state.startup_prewarm.is_none() { - state.reasoning_effort_pin = ReasoningEffortPin::Unset; - } - } - sess.services - .thread_extension_data - .remove::(); - sess.guardian_review_session().invalidate().await; - sess.services - .agent_control - .rollout_budget() - .rearm_reminder(sess.thread_id()); - sess.recompute_token_usage(turn_context.as_ref()).await; - - sess.persist_rollout_items(&[RolloutItem::EventMsg(rollback_msg.clone())]) - .await; - if let Err(err) = sess.flush_rollout().await { - sess.send_event( - turn_context.as_ref(), - EventMsg::Warning(WarningEvent { - message: format!( - "Rolled the thread back, but failed to save the rollback marker. Codex will continue retrying. Error: {err}" - ), - }), - ) - .await; - } - - sess.deliver_event_raw(Event { - id: turn_context.sub_id.clone(), - msg: rollback_msg, - }) - .await; -} - pub(super) async fn persist_thread_memory_mode_update( sess: &Arc, mode: ThreadMemoryMode, @@ -689,10 +562,6 @@ pub(super) async fn submission_loop( compact(&sess, sub.id.clone()).await; false } - Op::ThreadRollback { num_turns } => { - thread_rollback(&sess, sub.id.clone(), num_turns).await; - false - } Op::SetThreadMemoryMode { mode } => { set_thread_memory_mode(&sess, sub.id.clone(), mode).await; false diff --git a/codex-rs/core/src/session/reasoning_effort.rs b/codex-rs/core/src/session/reasoning_effort.rs index 5529a0d43f..5ff84dc2d1 100644 --- a/codex-rs/core/src/session/reasoning_effort.rs +++ b/codex-rs/core/src/session/reasoning_effort.rs @@ -1,7 +1,7 @@ //! Cache-preserving effort updates and the request-effort baseline for a context window. //! -//! Only trusted harness items establish overrides. Replay and rollback preserve startup -//! prewarm's baseline while it is retained; later rollback invalidates the runtime pin. +//! Only trusted harness items establish overrides. Replay preserves startup prewarm's +//! baseline while it is retained. //! Successful compaction retires the overrides and allows a fresh request baseline. use super::session::Session; diff --git a/codex-rs/core/src/session/tests.rs b/codex-rs/core/src/session/tests.rs index 56a00c0d61..6abb81d892 100644 --- a/codex-rs/core/src/session/tests.rs +++ b/codex-rs/core/src/session/tests.rs @@ -86,7 +86,6 @@ use codex_protocol::permissions::FileSystemSandboxPolicy; use codex_protocol::permissions::FileSystemSandboxPolicyContext; use codex_protocol::permissions::FileSystemSpecialPath; use codex_protocol::protocol::EnvironmentConfigState; -use codex_protocol::protocol::ErrorEvent; use codex_protocol::protocol::SandboxPolicy; use codex_protocol::protocol::TurnEnvironmentSelections; use codex_protocol::request_permissions::PermissionGrantScope; @@ -165,7 +164,6 @@ use codex_protocol::protocol::RealtimeVoicesList; use codex_protocol::protocol::SessionMeta; use codex_protocol::protocol::SessionMetaLine; use codex_protocol::protocol::Submission; -use codex_protocol::protocol::ThreadRolledBackEvent; use codex_protocol::protocol::ThreadSettingsOverrides; use codex_protocol::protocol::TokenCountEvent; use codex_protocol::protocol::TokenUsage; @@ -3906,608 +3904,6 @@ async fn record_initial_history_forked_hydrates_previous_turn_settings() { ); } -#[tokio::test] -async fn thread_rollback_drops_last_turn_from_history() { - let (mut sess, tc, rx) = make_session_and_context_with_rx().await; - let rollout_path = attach_thread_persistence( - Arc::get_mut(&mut sess).expect("session should not have additional references"), - ) - .await; - - let initial_context = build_initial_context(&sess, &tc).await; - let turn_1 = vec![ - user_message("turn 1 user"), - assistant_message("turn 1 assistant"), - ]; - let turn_2 = vec![ - user_message("turn 2 user"), - assistant_message("turn 2 assistant"), - ]; - let mut full_history = Vec::new(); - full_history.extend(initial_context.clone()); - full_history.extend(turn_1.clone()); - full_history.extend(turn_2); - sess.replace_history(full_history.clone(), Some(tc.to_turn_context_item())) - .await; - let rollout_items: Vec = full_history - .into_iter() - .map(ResponseItemEnvelope::new) - .map(RolloutItem::ResponseItem) - .collect(); - sess.persist_rollout_items(&rollout_items).await; - sess.set_previous_turn_settings(Some(PreviousTurnSettings { - model: "stale-model".to_string(), - comp_hash: None, - realtime_active: Some(tc.realtime_active), - })) - .await; - { - let mut state = sess.state.lock().await; - state.set_reference_context_item(Some(tc.to_turn_context_item())); - } - - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 1).await; - - let rollback_event = wait_for_thread_rolled_back(&rx).await; - assert_eq!(rollback_event.num_turns, 1); - - let mut expected = Vec::new(); - expected.extend(initial_context); - expected.extend(turn_1); - - let history = sess.clone_history().await; - assert_eq!(expected, raw_history_items(&history)); - assert_eq!(sess.previous_turn_settings().await, None); - assert!(sess.reference_context_item().await.is_none()); - - let InitialHistory::Resumed(resumed) = RolloutRecorder::get_rollout_history(&rollout_path) - .await - .expect("read rollout history") - else { - panic!("expected resumed rollout history"); - }; - assert!(resumed.history.iter().any(|item| { - matches!( - item, - RolloutItem::EventMsg(EventMsg::ThreadRolledBack(rollback)) - if rollback.num_turns == 1 - ) - })); -} - -#[tokio::test] -async fn thread_rollback_clears_history_when_num_turns_exceeds_existing_turns() { - let (mut sess, tc, rx) = make_session_and_context_with_rx().await; - attach_thread_persistence( - Arc::get_mut(&mut sess).expect("session should not have additional references"), - ) - .await; - - let initial_context = build_initial_context(&sess, &tc).await; - let turn_1 = vec![user_message("turn 1 user")]; - let mut full_history = Vec::new(); - full_history.extend(initial_context.clone()); - full_history.extend(turn_1); - sess.replace_history(full_history.clone(), Some(tc.to_turn_context_item())) - .await; - let rollout_items: Vec = full_history - .into_iter() - .map(ResponseItemEnvelope::new) - .map(RolloutItem::ResponseItem) - .collect(); - sess.persist_rollout_items(&rollout_items).await; - - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 99).await; - - let rollback_event = wait_for_thread_rolled_back(&rx).await; - assert_eq!(rollback_event.num_turns, 99); - - let history = sess.clone_history().await; - assert_eq!(initial_context, raw_history_items(&history)); -} - -#[tokio::test] -async fn thread_rollback_fails_without_persisted_thread_history() { - let (sess, tc, rx) = make_session_and_context_with_rx().await; - - let initial_context = build_initial_context(&sess, &tc).await; - sess.record_conversation_items(tc.as_ref(), tc.model_info(), &initial_context) - .await; - let history_before_rollback = sess.clone_history().await; - - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 1).await; - - let error_event = wait_for_thread_rollback_failed(&rx).await; - assert_eq!( - error_event.message, - "thread rollback requires persisted thread history" - ); - assert_eq!( - error_event.codex_error_info, - Some(CodexErrorInfo::ThreadRollbackFailed) - ); - assert_eq!( - raw_history_items(&sess.clone_history().await), - raw_history_items(&history_before_rollback) - ); -} - -#[tokio::test] -async fn thread_rollback_recomputes_previous_turn_settings_and_reference_context_from_replay() { - let (mut sess, tc, rx) = make_session_and_context_with_rx().await; - attach_thread_persistence( - Arc::get_mut(&mut sess).expect("session should not have additional references"), - ) - .await; - - let first_context_item = tc.to_turn_context_item(); - let first_turn_id = first_context_item - .turn_id - .clone() - .expect("thread settings should have turn_id"); - let mut rolled_back_context_item = first_context_item.clone(); - rolled_back_context_item.turn_id = Some("rolled-back-turn".to_string()); - rolled_back_context_item.model = "rolled-back-model".to_string(); - let rolled_back_turn_id = rolled_back_context_item - .turn_id - .clone() - .expect("thread settings should have turn_id"); - let turn_one_user = user_message("turn 1 user"); - let turn_one_assistant = assistant_message("turn 1 assistant"); - let turn_two_user = user_message("turn 2 user"); - let turn_two_assistant = assistant_message("turn 2 assistant"); - - sess.persist_rollout_items(&[ - RolloutItem::EventMsg(EventMsg::TurnStarted( - codex_protocol::protocol::TurnStartedEvent { - turn_id: first_turn_id.clone(), - root_turn_id: None, - trace_id: None, - started_at: None, - model_context_window: Some(128_000), - collaboration_mode_kind: ModeKind::Default, - }, - )), - RolloutItem::EventMsg(EventMsg::UserMessage( - codex_protocol::protocol::UserMessageEvent { - client_id: None, - message: "turn 1 user".to_string(), - images: None, - local_images: Vec::new(), - text_elements: Vec::new(), - ..Default::default() - }, - )), - RolloutItem::TurnContext(first_context_item.clone()), - RolloutItem::ResponseItem(turn_one_user.clone().into()), - RolloutItem::ResponseItem(turn_one_assistant.clone().into()), - RolloutItem::EventMsg(EventMsg::TurnComplete(TurnCompleteEvent { - turn_id: first_turn_id, - started_at: None, - last_agent_message: None, - error: None, - completed_at: None, - duration_ms: None, - time_to_first_token_ms: None, - })), - RolloutItem::EventMsg(EventMsg::TurnStarted( - codex_protocol::protocol::TurnStartedEvent { - turn_id: rolled_back_turn_id.clone(), - root_turn_id: None, - trace_id: None, - started_at: None, - model_context_window: Some(128_000), - collaboration_mode_kind: ModeKind::Default, - }, - )), - RolloutItem::EventMsg(EventMsg::UserMessage( - codex_protocol::protocol::UserMessageEvent { - client_id: None, - message: "turn 2 user".to_string(), - images: None, - local_images: Vec::new(), - text_elements: Vec::new(), - ..Default::default() - }, - )), - RolloutItem::TurnContext(rolled_back_context_item), - RolloutItem::ResponseItem(turn_two_user.into()), - RolloutItem::ResponseItem(turn_two_assistant.into()), - RolloutItem::EventMsg(EventMsg::TurnComplete(TurnCompleteEvent { - turn_id: rolled_back_turn_id, - started_at: None, - last_agent_message: None, - error: None, - completed_at: None, - duration_ms: None, - time_to_first_token_ms: None, - })), - ]) - .await; - sess.replace_history( - vec![assistant_message("stale history")], - Some(first_context_item.clone()), - ) - .await; - sess.set_previous_turn_settings(Some(PreviousTurnSettings { - model: "stale-model".to_string(), - comp_hash: None, - realtime_active: None, - })) - .await; - - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 1).await; - let rollback_event = wait_for_thread_rolled_back(&rx).await; - assert_eq!(rollback_event.num_turns, 1); - - assert_eq!( - raw_history_items(&sess.clone_history().await), - vec![turn_one_user, turn_one_assistant] - ); - assert_eq!( - sess.previous_turn_settings().await, - Some(PreviousTurnSettings { - model: tc.model_info().slug.clone(), - comp_hash: None, - realtime_active: Some(tc.realtime_active), - }) - ); - assert_eq!( - serde_json::to_value(sess.reference_context_item().await) - .expect("serialize replay reference context item"), - serde_json::to_value(Some(first_context_item)) - .expect("serialize expected reference context item") - ); -} - -#[tokio::test] -async fn thread_rollback_restores_cleared_reference_context_item_after_compaction() { - let (mut sess, tc, rx) = make_session_and_context_with_rx().await; - attach_thread_persistence( - Arc::get_mut(&mut sess).expect("session should not have additional references"), - ) - .await; - - let first_context_item = tc.to_turn_context_item(); - let first_turn_id = first_context_item - .turn_id - .clone() - .expect("thread settings should have turn_id"); - let compact_turn_id = "compact-turn".to_string(); - let rolled_back_turn_id = "rolled-back-turn".to_string(); - let compacted_history = vec![ - user_message("turn 1 user"), - user_message("summary after compaction"), - ]; - let first_window_id = Uuid::now_v7(); - let previous_window_id = Uuid::now_v7(); - let compacted_window_id = Uuid::now_v7(); - - sess.persist_rollout_items(&[ - RolloutItem::EventMsg(EventMsg::TurnStarted( - codex_protocol::protocol::TurnStartedEvent { - turn_id: first_turn_id.clone(), - root_turn_id: None, - trace_id: None, - started_at: None, - model_context_window: Some(128_000), - collaboration_mode_kind: ModeKind::Default, - }, - )), - RolloutItem::EventMsg(EventMsg::UserMessage(UserMessageEvent { - client_id: None, - message: "turn 1 user".to_string(), - images: None, - local_images: Vec::new(), - text_elements: Vec::new(), - ..Default::default() - })), - RolloutItem::TurnContext(first_context_item.clone()), - RolloutItem::ResponseItem(user_message("turn 1 user").into()), - RolloutItem::ResponseItem(assistant_message("turn 1 assistant").into()), - RolloutItem::EventMsg(EventMsg::TurnComplete(TurnCompleteEvent { - turn_id: first_turn_id, - started_at: None, - last_agent_message: None, - error: None, - completed_at: None, - duration_ms: None, - time_to_first_token_ms: None, - })), - RolloutItem::EventMsg(EventMsg::TurnStarted( - codex_protocol::protocol::TurnStartedEvent { - turn_id: compact_turn_id.clone(), - root_turn_id: None, - trace_id: None, - started_at: None, - model_context_window: Some(128_000), - collaboration_mode_kind: ModeKind::Default, - }, - )), - RolloutItem::Compacted(CompactedItem { - message: "summary after compaction".to_string(), - replacement_history: Some( - compacted_history - .iter() - .cloned() - .map(ResponseItemEnvelope::new) - .collect(), - ), - retained_context: None, - guardian_history: None, - mcp_resource_origins: None, - window_number: Some(7), - first_window_id: Some(first_window_id.to_string()), - previous_window_id: Some(previous_window_id.to_string()), - window_id: Some(compacted_window_id.to_string()), - compaction_response_id: None, - latest_token_usage_record: None, - }), - RolloutItem::EventMsg(EventMsg::TurnComplete(TurnCompleteEvent { - turn_id: compact_turn_id, - started_at: None, - last_agent_message: None, - error: None, - completed_at: None, - duration_ms: None, - time_to_first_token_ms: None, - })), - RolloutItem::EventMsg(EventMsg::TurnStarted( - codex_protocol::protocol::TurnStartedEvent { - turn_id: rolled_back_turn_id.clone(), - root_turn_id: None, - trace_id: None, - started_at: None, - model_context_window: Some(128_000), - collaboration_mode_kind: ModeKind::Default, - }, - )), - RolloutItem::EventMsg(EventMsg::UserMessage(UserMessageEvent { - client_id: None, - message: "turn 2 user".to_string(), - images: None, - local_images: Vec::new(), - text_elements: Vec::new(), - ..Default::default() - })), - RolloutItem::TurnContext(TurnContextItem { - turn_id: Some(rolled_back_turn_id.clone()), - model: "rolled-back-model".to_string(), - comp_hash: None, - ..first_context_item.clone() - }), - RolloutItem::ResponseItem(user_message("turn 2 user").into()), - RolloutItem::ResponseItem(assistant_message("turn 2 assistant").into()), - RolloutItem::EventMsg(EventMsg::TurnComplete(TurnCompleteEvent { - turn_id: rolled_back_turn_id, - started_at: None, - last_agent_message: None, - error: None, - completed_at: None, - duration_ms: None, - time_to_first_token_ms: None, - })), - ]) - .await; - sess.replace_history( - vec![assistant_message("stale history")], - Some(first_context_item), - ) - .await; - { - let mut state = sess.state.lock().await; - state.restore_auto_compact_window( - /*window_number*/ 99, - AutoCompactWindowIds { - first_window_id: Uuid::now_v7(), - previous_window_id: Some(Uuid::now_v7()), - window_id: Uuid::now_v7(), - }, - ); - } - - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 1).await; - let rollback_event = wait_for_thread_rolled_back(&rx).await; - assert_eq!(rollback_event.num_turns, 1); - - assert_eq!( - raw_history_items(&sess.clone_history().await), - compacted_history - ); - assert!(sess.reference_context_item().await.is_none()); - assert_eq!( - sess.state.lock().await.auto_compact_window_ids(), - AutoCompactWindowIds { - first_window_id, - previous_window_id: Some(previous_window_id), - window_id: compacted_window_id, - } - ); - assert!(sess.current_window_id().await.ends_with(":7")); -} - -#[tokio::test] -async fn thread_rollback_persists_marker_and_replays_cumulatively() { - let (mut sess, tc, rx) = make_session_and_context_with_rx().await; - let rollout_path = attach_thread_persistence( - Arc::get_mut(&mut sess).expect("session should not have additional references"), - ) - .await; - let turn_context_item = tc.to_turn_context_item(); - - sess.persist_rollout_items(&[ - RolloutItem::EventMsg(EventMsg::TurnStarted( - codex_protocol::protocol::TurnStartedEvent { - turn_id: "turn-1".to_string(), - root_turn_id: None, - trace_id: None, - started_at: None, - model_context_window: Some(128_000), - collaboration_mode_kind: ModeKind::Default, - }, - )), - RolloutItem::EventMsg(EventMsg::UserMessage(UserMessageEvent { - client_id: None, - message: "turn 1 user".to_string(), - images: None, - local_images: Vec::new(), - text_elements: Vec::new(), - ..Default::default() - })), - RolloutItem::TurnContext(turn_context_item.clone()), - RolloutItem::ResponseItem(user_message("turn 1 user").into()), - RolloutItem::ResponseItem(assistant_message("turn 1 assistant").into()), - RolloutItem::EventMsg(EventMsg::TurnComplete(TurnCompleteEvent { - turn_id: "turn-1".to_string(), - started_at: None, - last_agent_message: None, - error: None, - completed_at: None, - duration_ms: None, - time_to_first_token_ms: None, - })), - RolloutItem::EventMsg(EventMsg::TurnStarted( - codex_protocol::protocol::TurnStartedEvent { - turn_id: "turn-2".to_string(), - root_turn_id: None, - trace_id: None, - started_at: None, - model_context_window: Some(128_000), - collaboration_mode_kind: ModeKind::Default, - }, - )), - RolloutItem::EventMsg(EventMsg::UserMessage(UserMessageEvent { - client_id: None, - message: "turn 2 user".to_string(), - images: None, - local_images: Vec::new(), - text_elements: Vec::new(), - ..Default::default() - })), - RolloutItem::TurnContext(turn_context_item.clone()), - RolloutItem::ResponseItem(user_message("turn 2 user").into()), - RolloutItem::ResponseItem(assistant_message("turn 2 assistant").into()), - RolloutItem::EventMsg(EventMsg::TurnComplete(TurnCompleteEvent { - turn_id: "turn-2".to_string(), - started_at: None, - last_agent_message: None, - error: None, - completed_at: None, - duration_ms: None, - time_to_first_token_ms: None, - })), - RolloutItem::EventMsg(EventMsg::TurnStarted( - codex_protocol::protocol::TurnStartedEvent { - turn_id: "turn-3".to_string(), - root_turn_id: None, - trace_id: None, - started_at: None, - model_context_window: Some(128_000), - collaboration_mode_kind: ModeKind::Default, - }, - )), - RolloutItem::EventMsg(EventMsg::UserMessage(UserMessageEvent { - client_id: None, - message: "turn 3 user".to_string(), - images: None, - local_images: Vec::new(), - text_elements: Vec::new(), - ..Default::default() - })), - RolloutItem::TurnContext(turn_context_item), - RolloutItem::ResponseItem(user_message("turn 3 user").into()), - RolloutItem::ResponseItem(assistant_message("turn 3 assistant").into()), - RolloutItem::EventMsg(EventMsg::TurnComplete(TurnCompleteEvent { - turn_id: "turn-3".to_string(), - started_at: None, - last_agent_message: None, - error: None, - completed_at: None, - duration_ms: None, - time_to_first_token_ms: None, - })), - ]) - .await; - - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 1).await; - let first_rollback = wait_for_thread_rolled_back(&rx).await; - assert_eq!(first_rollback.num_turns, 1); - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 1).await; - let second_rollback = wait_for_thread_rolled_back(&rx).await; - assert_eq!(second_rollback.num_turns, 1); - - assert_eq!( - raw_history_items(&sess.clone_history().await), - vec![ - user_message("turn 1 user"), - assistant_message("turn 1 assistant") - ] - ); - - let InitialHistory::Resumed(resumed) = RolloutRecorder::get_rollout_history(&rollout_path) - .await - .expect("read rollout history") - else { - panic!("expected resumed rollout history"); - }; - let rollback_markers = resumed - .history - .iter() - .filter(|item| matches!(item, RolloutItem::EventMsg(EventMsg::ThreadRolledBack(_)))) - .count(); - assert_eq!(rollback_markers, 2); -} - -#[tokio::test] -async fn thread_rollback_fails_when_turn_in_progress() { - let (sess, tc, rx) = make_session_and_context_with_rx().await; - - let initial_context = build_initial_context(&sess, &tc).await; - sess.record_conversation_items(tc.as_ref(), tc.model_info(), &initial_context) - .await; - let history_before_rollback = sess.clone_history().await; - - *sess.active_turn.lock().await = Some(crate::state::ActiveTurn::default()); - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 1).await; - - let error_event = wait_for_thread_rollback_failed(&rx).await; - assert_eq!( - error_event.codex_error_info, - Some(CodexErrorInfo::ThreadRollbackFailed) - ); - - let history = sess.clone_history().await; - assert_eq!( - raw_history_items(&history_before_rollback), - raw_history_items(&history) - ); -} - -#[tokio::test] -async fn thread_rollback_fails_when_num_turns_is_zero() { - let (sess, tc, rx) = make_session_and_context_with_rx().await; - - let initial_context = build_initial_context(&sess, &tc).await; - sess.record_conversation_items(tc.as_ref(), tc.model_info(), &initial_context) - .await; - let history_before_rollback = sess.clone_history().await; - - handlers::thread_rollback(&sess, "sub-1".to_string(), /*num_turns*/ 0).await; - - let error_event = wait_for_thread_rollback_failed(&rx).await; - assert_eq!(error_event.message, "num_turns must be >= 1"); - assert_eq!( - error_event.codex_error_info, - Some(CodexErrorInfo::ThreadRollbackFailed) - ); - - let history = sess.clone_history().await; - assert_eq!( - raw_history_items(&history_before_rollback), - raw_history_items(&history) - ); -} - #[tokio::test] async fn set_rate_limits_retains_previous_credits() { let codex_home = tempfile::tempdir().expect("create temp dir"); @@ -4965,42 +4361,6 @@ fn success_flag_true_with_no_error_and_content_used() { assert_eq!(expected, got); } -async fn wait_for_thread_rolled_back(rx: &async_channel::Receiver) -> ThreadRolledBackEvent { - let deadline = StdDuration::from_secs(2); - let start = std::time::Instant::now(); - loop { - let remaining = deadline.saturating_sub(start.elapsed()); - let evt = tokio::time::timeout(remaining, rx.recv()) - .await - .expect("timeout waiting for event") - .expect("event"); - match evt.msg { - EventMsg::ThreadRolledBack(payload) => return payload, - _ => continue, - } - } -} - -async fn wait_for_thread_rollback_failed(rx: &async_channel::Receiver) -> ErrorEvent { - let deadline = StdDuration::from_secs(2); - let start = std::time::Instant::now(); - loop { - let remaining = deadline.saturating_sub(start.elapsed()); - let evt = tokio::time::timeout(remaining, rx.recv()) - .await - .expect("timeout waiting for event") - .expect("event"); - match evt.msg { - EventMsg::Error(payload) - if payload.codex_error_info == Some(CodexErrorInfo::ThreadRollbackFailed) => - { - return payload; - } - _ => continue, - } - } -} - async fn open_thread_persistence(session: &mut Session) -> PathBuf { let config = session.get_config().await; let live_thread = LiveThread::create( diff --git a/codex-rs/core/src/session/turn.rs b/codex-rs/core/src/session/turn.rs index 4fb1aac62f..777dc8963b 100644 --- a/codex-rs/core/src/session/turn.rs +++ b/codex-rs/core/src/session/turn.rs @@ -503,7 +503,7 @@ pub(crate) async fn run_turn( .record_step_world_state_if_changed(&world_state, step_context.as_ref()) .await?; - // Keep the override after accepted input so ordinary turn rollback removes it too. + // Keep the override after accepted input so history truncation removes them together. sess.record_reasoning_effort_override(step_context.as_ref()) .await; diff --git a/codex-rs/core/src/state/session.rs b/codex-rs/core/src/state/session.rs index d059d0502b..b45bec136a 100644 --- a/codex-rs/core/src/state/session.rs +++ b/codex-rs/core/src/state/session.rs @@ -31,8 +31,7 @@ use codex_utils_output_truncation::TruncationPolicy; use tokio_util::task::AbortOnDropHandle; /// Runtime request effort, initially unset and established by prewarm or sampling. -/// Rollback clears it after startup prewarm is consumed; successful compaction allows -/// a fresh baseline without an override. +/// Successful compaction allows a fresh baseline without an override. pub(crate) enum ReasoningEffortPin { Unset, Compacted, diff --git a/codex-rs/core/tests/suite/compact_resume_fork.rs b/codex-rs/core/tests/suite/compact_resume_fork.rs index b60a453d0a..c2372d4076 100644 --- a/codex-rs/core/tests/suite/compact_resume_fork.rs +++ b/codex-rs/core/tests/suite/compact_resume_fork.rs @@ -19,30 +19,21 @@ use codex_core::spawn::CODEX_SANDBOX_NETWORK_DISABLED_ENV_VAR; use codex_extension_api::ExtensionRegistryBuilder; use codex_history::CodexHarnessMetadata; use codex_history::RolloutItem; -use codex_protocol::config_types::CollaborationMode; -use codex_protocol::config_types::ModeKind; -use codex_protocol::config_types::Settings; use codex_protocol::mcp::ClientMcpExtensions; use codex_protocol::models::ContentItem; use codex_protocol::models::ResponseItem; use codex_protocol::protocol::EventMsg; use codex_protocol::protocol::Op; -use codex_protocol::protocol::ThreadSettingsOverrides; use codex_protocol::protocol::WarningEvent; use codex_protocol::user_input::UserInput; use core_test_support::ThreadIdle; -use core_test_support::context_snapshot; -use core_test_support::context_snapshot::ContextSnapshotOptions; -use core_test_support::context_snapshot::ContextSnapshotRenderMode; use core_test_support::responses::ResponseMock; use core_test_support::responses::ResponsesRequest; use core_test_support::responses::ev_assistant_message; use core_test_support::responses::ev_completed; -use core_test_support::responses::ev_response_created; use core_test_support::responses::mount_sse_once_match; use core_test_support::responses::mount_sse_sequence; use core_test_support::responses::sse; -use core_test_support::test_codex::local_selections; use core_test_support::test_codex::test_codex; use core_test_support::wait_for_event; use pretty_assertions::assert_eq; @@ -54,7 +45,6 @@ use tempfile::TempDir; use wiremock::MockServer; const AFTER_SECOND_RESUME: &str = "AFTER_SECOND_RESUME"; -const AFTER_ROLLBACK: &str = "AFTER_ROLLBACK"; const CHECKPOINT_METADATA_KEY: &str = "replacement_history_metadata"; fn network_disabled() -> bool { @@ -506,233 +496,6 @@ async fn compact_resume_after_second_compaction_preserves_history() -> Result<() Ok(()) } -#[tokio::test(flavor = "multi_thread", worker_threads = 2)] -/// Scenario: rolling back behind a pre-turn compaction should replay -/// append-only history from the rollout file and keep earlier compacted -/// history visible. -async fn snapshot_rollback_past_compaction_replays_append_only_history() -> Result<()> { - if network_disabled() { - println!("Skipping test because network is disabled in this sandbox"); - return Ok(()); - } - - const EDITED_AFTER_COMPACT: &str = "EDITED_AFTER_COMPACT"; - const SECOND_REPLY: &str = "SECOND_REPLY"; - - let server = MockServer::start().await; - let sse1 = sse(vec![ - ev_assistant_message("m1", FIRST_REPLY), - ev_completed("r1"), - ]); - let sse2 = sse(vec![ - ev_assistant_message("m2", SUMMARY_TEXT), - ev_completed("r2"), - ]); - let sse3 = sse(vec![ - ev_assistant_message("m3", SECOND_REPLY), - ev_completed("r3"), - ]); - let sse4 = sse(vec![ev_completed("r4")]); - - let request_log = mount_sse_sequence(&server, vec![sse1, sse2, sse3, sse4]).await; - - let (_home, _config, _manager, base) = start_test_conversation(&server, /*model*/ None).await; - - user_turn(&base, "hello world").await; - compact_conversation(&base).await; - user_turn(&base, EDITED_AFTER_COMPACT).await; - - base.submit(Op::ThreadRollback { num_turns: 1 }) - .await - .expect("submit thread rollback"); - let rollback_event = wait_for_event(&base, |ev| { - if let EventMsg::Error(error) = ev { - panic!("rollback failed: {error:?}"); - } - matches!(ev, EventMsg::ThreadRolledBack(_)) - }) - .await; - let EventMsg::ThreadRolledBack(rollback_event) = rollback_event else { - panic!("expected thread rolled back event"); - }; - assert_eq!(rollback_event.num_turns, 1); - - user_turn(&base, AFTER_ROLLBACK).await; - - let requests = request_log.requests(); - assert_eq!(requests.len(), 4); - assert!(requests[1].body_contains_text(SUMMARIZATION_PROMPT)); - assert!(requests[2].body_contains_text("hello world")); - assert!(requests[2].body_contains_text(SUMMARY_TEXT)); - assert!(requests[2].body_contains_text(EDITED_AFTER_COMPACT)); - let after_rollback_user_texts = requests[3].message_input_texts("user"); - let after_rollback_last = after_rollback_user_texts - .last() - .expect("post-rollback request missing user messages"); - assert_eq!(after_rollback_last, AFTER_ROLLBACK); - assert!( - requests[3].body_contains_text("hello world"), - "the first turn should remain visible after rollback behind compaction", - ); - assert!( - !requests[3].body_contains_text(EDITED_AFTER_COMPACT), - "the edited post-compaction turn should be removed by rollback", - ); - assert!( - requests[3].body_contains_text(SUMMARY_TEXT), - "compaction summary should remain for the preserved first turn", - ); - - insta::assert_snapshot!( - "rollback_past_compaction_shapes", - context_snapshot::format_labeled_requests_snapshot( - "rollback past compaction replay after rollback", - &[ - ("compaction request", &requests[1]), - ("before rollback", &requests[2]), - ("after rollback", &requests[3]), - ], - &ContextSnapshotOptions::default() - .strip_capability_instructions() - .render_mode(ContextSnapshotRenderMode::KindWithTextPrefix { max_chars: 64 }), - ) - ); - - Ok(()) -} - -#[tokio::test(flavor = "multi_thread", worker_threads = 2)] -/// Scenario: rolling back a turn that introduced persistent pre-thread settings -/// diffs should trim those context updates so the next request includes them -/// only once. -async fn snapshot_rollback_followup_turn_trims_context_updates() -> Result<()> { - if network_disabled() { - println!("Skipping test because network is disabled in this sandbox"); - return Ok(()); - } - - const MODEL: &str = "gpt-5.4"; - const TURN_ONE_USER: &str = "turn 1 user"; - const TURN_TWO_USER: &str = "turn 2 user"; - const FOLLOWUP_USER: &str = "follow-up user"; - const ROLLED_BACK_DEV_INSTRUCTIONS: &str = "ROLLED_BACK_DEV_INSTRUCTIONS"; - const PRETURN_CONTEXT_DIFF_CWD: &str = "PRETURN_CONTEXT_DIFF_CWD"; - - let server = MockServer::start().await; - let request_log = mount_sse_sequence( - &server, - vec![ - sse(vec![ - ev_assistant_message("m1", "turn 1 assistant"), - ev_completed("r1"), - ]), - sse(vec![ - ev_assistant_message("m2", "turn 2 assistant"), - ev_completed("r2"), - ]), - sse(vec![ev_response_created("r3"), ev_completed("r3")]), - ], - ) - .await; - - let (_home, config, _manager, conversation) = - start_test_conversation(&server, Some(MODEL)).await; - - user_turn(&conversation, TURN_ONE_USER).await; - - let override_cwd = config.cwd.join(PRETURN_CONTEXT_DIFF_CWD); - std::fs::create_dir_all(&override_cwd)?; - core_test_support::submit_thread_settings( - &conversation, - ThreadSettingsOverrides { - environments: Some(local_selections(override_cwd.clone())), - collaboration_mode: Some(CollaborationMode { - mode: ModeKind::Default, - settings: Settings { - model: MODEL.to_string(), - reasoning_effort: None, - developer_instructions: Some(ROLLED_BACK_DEV_INSTRUCTIONS.to_string()), - }, - }), - ..Default::default() - }, - ) - .await?; - - user_turn(&conversation, TURN_TWO_USER).await; - - conversation - .submit(Op::ThreadRollback { num_turns: 1 }) - .await?; - let rollback_event = wait_for_event(&conversation, |ev| { - if let EventMsg::Error(error) = ev { - panic!("rollback failed: {error:?}"); - } - matches!(ev, EventMsg::ThreadRolledBack(_)) - }) - .await; - let EventMsg::ThreadRolledBack(rollback_event) = rollback_event else { - panic!("expected thread rolled back event"); - }; - assert_eq!(rollback_event.num_turns, 1); - - user_turn(&conversation, FOLLOWUP_USER).await; - - let requests = request_log.requests(); - assert_eq!(requests.len(), 3); - - let before_rollback_developer_count = requests[1] - .message_input_texts("developer") - .iter() - .filter(|text| text.contains(ROLLED_BACK_DEV_INSTRUCTIONS)) - .count(); - assert_eq!(before_rollback_developer_count, 1); - assert_eq!( - requests[1] - .message_input_texts("user") - .iter() - .filter(|text| text.contains(PRETURN_CONTEXT_DIFF_CWD)) - .count(), - 1 - ); - - let after_rollback_developer_count = requests[2] - .message_input_texts("developer") - .iter() - .filter(|text| text.contains(ROLLED_BACK_DEV_INSTRUCTIONS)) - .count(); - assert_eq!(after_rollback_developer_count, 1); - - let after_rollback_user_texts = requests[2].message_input_texts("user"); - assert_eq!( - after_rollback_user_texts - .iter() - .filter(|text| text.contains(PRETURN_CONTEXT_DIFF_CWD)) - .count(), - 1 - ); - assert_eq!( - after_rollback_user_texts.last().map(String::as_str), - Some(FOLLOWUP_USER) - ); - - insta::assert_snapshot!( - "rollback_followup_turn_trims_context_updates", - context_snapshot::format_labeled_requests_snapshot( - "rollback trims pre-turn override context updates before the follow-up request", - &[ - ("rolled-back turn request", &requests[1]), - ("follow-up request after rollback", &requests[2]), - ], - &ContextSnapshotOptions::default() - .strip_capability_instructions() - .render_mode(ContextSnapshotRenderMode::KindWithTextPrefix { max_chars: 96 }), - ) - ); - - Ok(()) -} - fn normalize_line_endings(value: &mut Value) { match value { Value::String(text) if text.contains('\r') => { diff --git a/codex-rs/core/tests/suite/guardian_authorization.rs b/codex-rs/core/tests/suite/guardian_authorization.rs index e793c5cb21..91e3ade7c7 100644 --- a/codex-rs/core/tests/suite/guardian_authorization.rs +++ b/codex-rs/core/tests/suite/guardian_authorization.rs @@ -217,8 +217,7 @@ async fn guardian_revalidates_owning_session_before_allow( } #[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn guardian_authorization_revision_survives_compaction_not_user_input_or_rollback() --> Result<()> { +async fn guardian_authorization_revision_survives_compaction_not_user_input() -> Result<()> { skip_if_no_network!(Ok(())); let server = responses::start_mock_server().await; @@ -285,14 +284,5 @@ async fn guardian_authorization_revision_survives_compaction_not_user_input_or_r .await; assert_eq!(test.codex.guardian_authorization_version().await, expected); - test.codex.ensure_rollout_materialized().await; - test.codex - .submit(Op::ThreadRollback { num_turns: 1 }) - .await?; - wait_for_event(&test.codex, |event| { - matches!(event, EventMsg::ThreadRolledBack(_)) - }) - .await; - assert_ne!(test.codex.guardian_authorization_version().await, expected); Ok(()) } diff --git a/codex-rs/core/tests/suite/guardian_history.rs b/codex-rs/core/tests/suite/guardian_history.rs index 1438fd937e..5ccc0fa328 100644 --- a/codex-rs/core/tests/suite/guardian_history.rs +++ b/codex-rs/core/tests/suite/guardian_history.rs @@ -1,4 +1,4 @@ -//! Exercises retained review history through compaction, resume, fork, eviction, and rollback. +//! Exercises retained review history through compaction, resume, fork, eviction, and legacy rollback replay. use anyhow::Result; use base64::Engine; @@ -17,6 +17,7 @@ use codex_protocol::protocol::AskForApproval; use codex_protocol::protocol::EventMsg; use codex_protocol::protocol::Op; use codex_protocol::protocol::ThreadHistoryMode; +use codex_protocol::protocol::ThreadRolledBackEvent; use codex_protocol::request_user_input::RequestUserInputAnswer; use codex_protocol::request_user_input::RequestUserInputResponse; use codex_protocol::user_input::UserInput; @@ -310,14 +311,15 @@ async fn guardian_history_uses_deltas_between_eviction_batches() -> Result<()> { } #[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn guardian_history_survives_compaction_and_eviction_but_not_rollback() -> Result<()> { +async fn guardian_history_survives_compaction_and_eviction_but_not_legacy_rollback_replay() +-> Result<()> { skip_if_no_network!(Ok(())); skip_if_wine_exec!( Ok(()), "Guardian approval actions require host-native paths" ); let server = start_mock_server().await; - let test = test_codex() + let mut test = test_codex() .with_config(|config| { config.features.enable(Feature::TokenBudget).unwrap(); config @@ -499,12 +501,35 @@ async fn guardian_history_survives_compaction_and_eviction_but_not_rollback() -> ); test.codex.ensure_rollout_materialized().await; test.codex - .submit(Op::ThreadRollback { num_turns: 2 }) + .append_rollout_items(&[RolloutItem::EventMsg(EventMsg::ThreadRolledBack( + ThreadRolledBackEvent { num_turns: 2 }, + ))]) .await?; - wait_for_event(&test.codex, |event| { - matches!(event, EventMsg::ThreadRolledBack(_)) - }) - .await; + test.codex.shutdown_and_wait().await?; + let thread_id = test.session_configured.thread_id; + test.thread_manager.remove_thread(&thread_id).await; + let model_context = test + .thread_store + .load_latest_model_context(LoadThreadHistoryParams { + thread_id, + include_archived: false, + }) + .await?; + test.codex = test + .thread_manager + .resume_thread_with_history( + test.config.clone(), + InitialHistory::Resumed(ResumedHistory { + conversation_id: thread_id, + history: Arc::new(model_context.items), + rollout_path: None, + }), + test.thread_manager.auth_manager(), + /*parent_trace*/ None, + ClientMcpExtensions::default(), + ) + .await? + .thread; } else { assert!(!transcript.contains(">>> TRUSTED USER ANSWERS START")); assert!(!transcript.contains("Do not publish anything.")); diff --git a/codex-rs/core/tests/suite/guardian_retained_context.rs b/codex-rs/core/tests/suite/guardian_retained_context.rs index 30d63fe815..d1c073b971 100644 --- a/codex-rs/core/tests/suite/guardian_retained_context.rs +++ b/codex-rs/core/tests/suite/guardian_retained_context.rs @@ -1,5 +1,5 @@ //! Retained-instruction and answer lifecycles through real sessions and durable checkpoints. -//! Real user input covers steering, compaction and rollback; legacy replay fixtures also use +//! Real user input covers steering and compaction; legacy rollback replay fixtures use //! the public rollout append API. Resume and child forks use production paths. use std::collections::HashMap; @@ -36,6 +36,7 @@ use codex_protocol::models::ResponseItem; use codex_protocol::protocol::EventMsg; use codex_protocol::protocol::Op; use codex_protocol::protocol::ThreadHistoryMode; +use codex_protocol::protocol::ThreadRolledBackEvent; use codex_protocol::request_user_input::RequestUserInputAnswer; use codex_protocol::request_user_input::RequestUserInputResponse; use codex_protocol::user_input::UserInput; @@ -63,7 +64,7 @@ use wiremock::MockServer; use wiremock::matchers::header; // Keep child completion out of the parent's history and wait for parent turn cleanup -// before checking rollback boundaries. +// before checking inherited authorization. #[derive(Default)] struct ForkTestLifecycle { entered: Notify, @@ -104,7 +105,7 @@ async fn wait_for_thread_idle(thread: &CodexThread) { .get_or_init(ThreadIdle::default); tokio::time::timeout(Duration::from_secs(10), idle.0.notified()) .await - .expect("thread should become idle before rollback"); + .expect("thread should become idle"); } async fn record_answer( @@ -220,7 +221,7 @@ async fn compact_and_assert_answers( expected: &[VerifiedAnswer], ) -> Result { // Inspect live state by persisting a real compaction checkpoint, not a private getter. - // Repeating this after resume/rollback also catches checkpoint resurrection. + // Repeating this after legacy rollback replay also catches checkpoint resurrection. thread.submit(Op::Compact).await?; wait_for_event(thread, |event| matches!(event, EventMsg::TurnComplete(_))).await; thread.flush_rollout().await?; @@ -250,11 +251,11 @@ enum InstructionSize { Oversized, } -#[test_case(ThreadHistoryMode::Legacy, true, InstructionSize::Normal; "enabled legacy rollback")] +#[test_case(ThreadHistoryMode::Legacy, true, InstructionSize::Normal; "enabled legacy rollback replay")] #[test_case(ThreadHistoryMode::Paginated, true, InstructionSize::Normal; "enabled paginated resume")] -#[test_case(ThreadHistoryMode::Legacy, false, InstructionSize::Normal; "disabled legacy rollback")] +#[test_case(ThreadHistoryMode::Legacy, false, InstructionSize::Normal; "disabled legacy rollback replay")] #[test_case(ThreadHistoryMode::Paginated, false, InstructionSize::Normal; "disabled paginated resume")] -#[test_case(ThreadHistoryMode::Legacy, true, InstructionSize::Oversized; "oversized instruction rollback")] +#[test_case(ThreadHistoryMode::Legacy, true, InstructionSize::Oversized; "oversized instruction rollback replay")] #[test_case(ThreadHistoryMode::Paginated, true, InstructionSize::Oversized; "oversized instruction resume")] #[tokio::test(flavor = "multi_thread", worker_threads = 2)] async fn retained_instructions_keep_identity_across_compaction_and_resume( @@ -272,8 +273,7 @@ async fn retained_instructions_keep_identity_across_compaction_and_resume( "Project detail. ".repeat(2_000) ), }; - // Paginated history supports checkpoint resume, but not the full-history read - // used by ThreadRollback. Exercise rollback on its supported legacy path. + // Legacy rollouts can contain rollback markers; paginated histories use checkpoint resume. let rollback_counts: &[usize] = match history_mode { ThreadHistoryMode::Legacy => &[1, 0], ThreadHistoryMode::Paginated => &[], @@ -496,11 +496,12 @@ async fn retained_instructions_keep_identity_across_compaction_and_resume( serde_json::Value::Null } ); - thread.submit(Op::ThreadRollback { num_turns: 1 }).await?; - wait_for_event(&thread, |event| { - matches!(event, EventMsg::ThreadRolledBack(_)) - }) - .await; + thread + .append_rollout_items(&[RolloutItem::EventMsg(EventMsg::ThreadRolledBack( + ThreadRolledBackEvent { num_turns: 1 }, + ))]) + .await?; + thread = resume(&test, &thread).await?; expected["user_messages"] .as_array_mut() .expect("expected retained user messages") @@ -772,7 +773,7 @@ async fn disabled_capture_stays_incomplete_after_compaction_and_enabled_resume() } #[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn retained_answers_rollback_only_the_steered_instruction() -> Result<()> { +async fn legacy_rollback_replay_retains_only_surviving_steered_answers() -> Result<()> { skip_if_no_network!(Ok(())); let server = start_mock_server().await; let test = test_codex() @@ -907,11 +908,12 @@ async fn retained_answers_rollback_only_the_steered_instruction() -> Result<()> let mut thread = resume(&test, &test.codex).await?; compact_and_assert_answers(&test, &thread, &answers).await?; for expected in [&answers[..1], &[]] { - thread.submit(Op::ThreadRollback { num_turns: 1 }).await?; - wait_for_event(&thread, |event| { - matches!(event, EventMsg::ThreadRolledBack(_)) - }) - .await; + thread + .append_rollout_items(&[RolloutItem::EventMsg(EventMsg::ThreadRolledBack( + ThreadRolledBackEvent { num_turns: 1 }, + ))]) + .await?; + thread = resume(&test, &thread).await?; compact_and_assert_answers(&test, &thread, expected).await?; thread = resume(&test, &thread).await?; compact_and_assert_answers(&test, &thread, expected).await?; @@ -922,7 +924,7 @@ async fn retained_answers_rollback_only_the_steered_instruction() -> Result<()> #[derive(Clone, Copy)] enum LifecycleBoundary { - Rollback, + LegacyRollbackReplay, ChildFork, } @@ -1221,8 +1223,8 @@ async fn forked_parent_instructions_do_not_become_local_authorization( sse(vec![ev_completed("parent-fork-completion")]), ) .await; - // Hold the child at a real tool boundary until rollback is checked. Its completion - // notification must not add a parent message or consume a parent mock response. + // Pause the child while checking inherited authorization. Its completion notification + // must not add a parent message or consume a parent mock response. let child_requests = mount_sse_once_match( &server, move |request: &wiremock::Request| { @@ -1274,36 +1276,9 @@ async fn forked_parent_instructions_do_not_become_local_authorization( thread_context_enabled.then_some((0, true)), "inherited conversation must not populate child-local authorization", ); - let root_before = child.guardian_root_snapshot().await.context("live root")?; + let root_snapshot = child.guardian_root_snapshot().await.context("live root")?; assert!( - root_before - .messages - .contains(&codex_core::GuardianRootMessage::User( - PARENT_GRANT.to_owned() - )) - ); - - wait_for_thread_idle(&test.codex).await; - test.codex - .submit(Op::ThreadRollback { num_turns: 1 }) - .await?; - wait_for_event(&test.codex, |event| { - if let EventMsg::Error(error) = event { - panic!("rollback failed: {error:?}"); - } - matches!(event, EventMsg::ThreadRolledBack(_)) - }) - .await; - let root_after = child - .guardian_root_snapshot() - .await - .context("live root after rollback")?; - assert_ne!( - root_before.authorization_version, - root_after.authorization_version - ); - assert!( - !root_after + root_snapshot .messages .contains(&codex_core::GuardianRootMessage::User( PARENT_GRANT.to_owned() @@ -1368,7 +1343,7 @@ async fn forked_parent_instructions_do_not_become_local_authorization( Ok(()) } -#[test_case(ThreadHistoryMode::Legacy, LifecycleBoundary::Rollback; "legacy rollback")] +#[test_case(ThreadHistoryMode::Legacy, LifecycleBoundary::LegacyRollbackReplay; "legacy rollback replay")] #[test_case(ThreadHistoryMode::Legacy, LifecycleBoundary::ChildFork; "legacy child fork")] #[test_case(ThreadHistoryMode::Paginated, LifecycleBoundary::ChildFork; "paginated child fork")] #[tokio::test(flavor = "multi_thread", worker_threads = 2)] @@ -1455,15 +1430,16 @@ async fn retained_answers_cross_real_session_boundaries( let expected = [before.clone(), after]; match boundary { - LifecycleBoundary::Rollback => { + LifecycleBoundary::LegacyRollbackReplay => { // First remove the suffix answer, then the source retained only in the checkpoint. let mut thread = thread; for expected in [std::slice::from_ref(&before), &[]] { - thread.submit(Op::ThreadRollback { num_turns: 1 }).await?; - wait_for_event(&thread, |event| { - matches!(event, EventMsg::ThreadRolledBack(_)) - }) - .await; + thread + .append_rollout_items(&[RolloutItem::EventMsg(EventMsg::ThreadRolledBack( + ThreadRolledBackEvent { num_turns: 1 }, + ))]) + .await?; + thread = resume(&test, &thread).await?; compact_and_assert_answers(&test, &thread, expected).await?; thread = resume(&test, &thread).await?; compact_and_assert_answers(&test, &thread, expected).await?; diff --git a/codex-rs/core/tests/suite/model_switching.rs b/codex-rs/core/tests/suite/model_switching.rs index 7338b7b437..6e0dc6df59 100644 --- a/codex-rs/core/tests/suite/model_switching.rs +++ b/codex-rs/core/tests/suite/model_switching.rs @@ -3,12 +3,7 @@ use codex_config::types::Personality; use codex_core::CodexThread; use codex_core::ForkSnapshot; use codex_core::TurnInputRequest; -use codex_core::config::Config; use codex_core::config::Constrained; -use codex_extension_api::ExtensionFuture; -use codex_extension_api::ExtensionRegistryBuilder; -use codex_extension_api::ThreadIdleInput; -use codex_extension_api::ThreadLifecycleContributor; use codex_features::Feature; use codex_history::RolloutItem; use codex_login::CodexAuth; @@ -64,9 +59,7 @@ use pretty_assertions::assert_eq; use serde_json::json; use std::collections::HashMap; use std::sync::Arc; -use std::time::Duration; use test_case::test_case; -use tokio::sync::Notify; use wiremock::MockServer; fn read_only_user_turn(test: &TestCodex, items: Vec, model: String) -> TurnInputRequest { @@ -303,131 +296,6 @@ async fn first_turn_after_empty_prefix_fork_preserves_inherited_base_instruction Ok(()) } -#[derive(Clone, Copy)] -enum RollbackFollowup { - StartupModel, - SwitchedModel, - ColdResume, -} - -#[derive(Default)] -struct RollbackReady { - idle: Notify, -} - -impl ThreadLifecycleContributor for RollbackReady { - fn on_thread_idle<'a>(&'a self, _input: ThreadIdleInput<'a>) -> ExtensionFuture<'a, ()> { - Box::pin(async move { - self.idle.notify_one(); - }) - } -} - -impl RollbackReady { - async fn wait(&self) { - // TurnComplete is delivered before the active turn is cleared. Rollback requires - // the later thread-idle callback so it cannot race with turn cleanup. - tokio::time::timeout(Duration::from_secs(10), self.idle.notified()) - .await - .expect("thread should become idle before rollback"); - } -} - -#[test_case(RollbackFollowup::StartupModel; "return to startup model")] -#[test_case(RollbackFollowup::SwitchedModel; "retry switched model")] -#[test_case(RollbackFollowup::ColdResume; "retry switched model after cold resume")] -#[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn rollback_first_turn_model_change_removes_its_instructions( - followup: RollbackFollowup, -) -> Result<()> { - skip_if_no_network!(Ok(())); - - let server = MockServer::start().await; - let response_mock = mount_sse_sequence( - &server, - vec![sse_completed("resp-first"), sse_completed("resp-followup")], - ) - .await; - - let initial_model = "gpt-5.6-terra"; - let switched_model = "gpt-5.5"; - let rollback_ready = Arc::new(RollbackReady::default()); - let mut extensions = ExtensionRegistryBuilder::new(); - extensions.thread_lifecycle_contributor(rollback_ready.clone()); - let mut builder = test_codex() - .with_model_info_override(initial_model, configure_model_switching_fixture) - .with_extensions(Arc::new(extensions.build())); - let test = builder.build_with_auto_env(&server).await?; - - submit_model_turn( - &test.codex, - switched_model, - ThreadSettingsOverrides::default(), - ) - .await?; - - rollback_ready.wait().await; - test.codex - .submit(Op::ThreadRollback { num_turns: 1 }) - .await?; - wait_for_event(&test.codex, |ev| { - if let EventMsg::Error(error) = ev { - panic!("rollback failed: {error:?}"); - } - matches!(ev, EventMsg::ThreadRolledBack(_)) - }) - .await; - - let test = match followup { - RollbackFollowup::ColdResume => { - let mut resume_builder = test_codex() - .with_model_info_override(initial_model, configure_model_switching_fixture) - .with_model(switched_model); - resume_builder.restart(&server, &test).await? - } - RollbackFollowup::StartupModel | RollbackFollowup::SwitchedModel => test, - }; - let followup_model = match followup { - RollbackFollowup::StartupModel => initial_model, - RollbackFollowup::SwitchedModel | RollbackFollowup::ColdResume => switched_model, - }; - submit_model_turn( - &test.codex, - followup_model, - ThreadSettingsOverrides::default(), - ) - .await?; - - let request = &response_mock.requests()[1]; - assert_eq!(request.body_json()["model"], followup_model); - let misaligned_messages = request - .inputs_of_type("message") - .into_iter() - .filter(|message| { - message["internal_chat_message_metadata_passthrough"]["content_item_kinds"] - .as_array() - .is_some_and(|kinds| { - message["content"] - .as_array() - .is_none_or(|content| content.len() != kinds.len()) - }) - }) - .collect::>(); - assert_eq!(misaligned_messages, Vec::::new()); - let model_switch_count = request - .message_input_texts("developer") - .iter() - .filter(|text| text.contains("")) - .count(); - assert_eq!( - model_switch_count, - usize::from(followup_model == switched_model), - "rolled-back model instructions must not survive or be duplicated" - ); - - Ok(()) -} - #[tokio::test(flavor = "multi_thread", worker_threads = 2)] async fn model_change_appends_model_instructions_developer_message() -> Result<()> { skip_if_no_network!(Ok(())); @@ -1359,113 +1227,6 @@ async fn model_change_from_generated_image_to_text_preserves_prior_generated_ima Ok(()) } -#[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn thread_rollback_after_generated_image_drops_entire_image_turn_history() -> Result<()> { - skip_if_no_network!(Ok(())); - - let server = MockServer::start().await; - let image_model_slug = "test-image-model"; - let image_model = test_model_info( - image_model_slug, - "Test Image Model", - "supports image input", - default_input_modalities(), - ); - mount_models_once( - &server, - ModelsResponse { - models: vec![image_model], - }, - ) - .await; - - let responses = mount_sse_sequence( - &server, - vec![ - sse(vec![ - ev_response_created("resp-1"), - ev_image_generation_call("ig_rollback", "completed", "lobster", "Zm9v"), - ev_completed_with_tokens("resp-1", /*total_tokens*/ 10), - ]), - sse_completed("resp-2"), - ], - ) - .await; - - let rollback_ready = Arc::new(RollbackReady::default()); - let mut extensions = ExtensionRegistryBuilder::new(); - extensions.thread_lifecycle_contributor(rollback_ready.clone()); - let mut builder = test_codex() - .with_extensions(Arc::new(extensions.build())) - .with_auth(CodexAuth::create_dummy_chatgpt_auth_for_testing()) - .with_config(move |config| { - config.model = Some(image_model_slug.to_string()); - }); - let test = builder.build(&server).await?; - let models_manager = test.thread_manager.get_models_manager(); - let _ = models_manager - .list_models( - RefreshStrategy::OnlineIfUncached, - codex_core::test_support::default_http_client_factory(), - ) - .await; - - test.codex - .start_or_steer_turn(read_only_user_turn( - &test, - vec![UserInput::Text { - text: "generate a lobster".to_string(), - text_elements: Vec::new(), - }], - image_model_slug.to_string(), - )) - .await?; - wait_for_event(&test.codex, |ev| matches!(ev, EventMsg::TurnComplete(_))).await; - - rollback_ready.wait().await; - test.codex - .submit(Op::ThreadRollback { num_turns: 1 }) - .await?; - wait_for_event(&test.codex, |ev| { - if let EventMsg::Error(error) = ev { - panic!("rollback failed: {error:?}"); - } - matches!(ev, EventMsg::ThreadRolledBack(_)) - }) - .await; - - test.codex - .start_or_steer_turn(read_only_user_turn( - &test, - vec![UserInput::Text { - text: "after rollback".to_string(), - text_elements: Vec::new(), - }], - image_model_slug.to_string(), - )) - .await?; - wait_for_event(&test.codex, |ev| matches!(ev, EventMsg::TurnComplete(_))).await; - - let requests = responses.requests(); - assert_eq!(requests.len(), 2, "expected two model requests"); - - let second_request = requests.last().expect("expected second request"); - assert!( - !second_request - .message_input_texts("user") - .iter() - .any(|text| text == "generate a lobster"), - "rollback should remove the rolled-back image-generation user turn" - ); - assert!( - second_request - .inputs_of_type("image_generation_call") - .is_empty(), - "rollback should remove the generated image call with the rolled-back turn" - ); - Ok(()) -} - #[tokio::test(flavor = "multi_thread", worker_threads = 2)] async fn model_switch_to_smaller_model_updates_token_context_window() -> Result<()> { skip_if_no_network!(Ok(())); diff --git a/codex-rs/core/tests/suite/reasoning_effort_override.rs b/codex-rs/core/tests/suite/reasoning_effort_override.rs index e6420e0a14..ab54d07039 100644 --- a/codex-rs/core/tests/suite/reasoning_effort_override.rs +++ b/codex-rs/core/tests/suite/reasoning_effort_override.rs @@ -7,10 +7,6 @@ use codex_core::SuspendTurnOutcome; use codex_core::TurnInputRequest; use codex_core::TurnInputSubmission; use codex_core::config::Config; -use codex_extension_api::ExtensionFuture; -use codex_extension_api::ExtensionRegistryBuilder; -use codex_extension_api::ThreadIdleInput; -use codex_extension_api::ThreadLifecycleContributor; use codex_features::Feature; use codex_login::CodexAuth; use codex_protocol::models::ResponseItem; @@ -32,8 +28,6 @@ use serde_json::Value; use std::sync::Arc; use std::time::Duration; use test_case::test_case; -use tokio::sync::Notify; -use tokio::time::timeout; use wiremock::ResponseTemplate; fn override_builder() -> TestCodexBuilder { @@ -378,8 +372,6 @@ enum PrewarmStartup { New, Resume, Fork, - ResumeThenRollback, - ForkThenRollback, } #[test_case(true, PrewarmStartup::New; "new thread feature enabled")] @@ -388,8 +380,6 @@ enum PrewarmStartup { #[test_case(false, PrewarmStartup::Resume; "resumed thread feature disabled")] #[test_case(true, PrewarmStartup::Fork; "forked thread feature enabled")] #[test_case(false, PrewarmStartup::Fork; "forked thread feature disabled")] -#[test_case(true, PrewarmStartup::ResumeThenRollback; "resumed thread rollback before first turn")] -#[test_case(true, PrewarmStartup::ForkThenRollback; "forked thread rollback before first turn")] #[tokio::test(flavor = "multi_thread", worker_threads = 2)] async fn reasoning_effort_override_websocket_prewarm_preserves_baseline( feature_enabled: bool, @@ -443,10 +433,7 @@ async fn reasoning_effort_override_websocket_prewarm_preserves_baseline( .map(String::as_str), Some("previous turn"), ); - if matches!( - startup, - PrewarmStartup::Fork | PrewarmStartup::ForkThenRollback - ) { + if matches!(startup, PrewarmStartup::Fork) { previous.codex.shutdown_and_wait().await?; let mut config = previous.config.clone(); configure_prewarm(&mut config); @@ -475,23 +462,6 @@ async fn reasoning_effort_override_websocket_prewarm_preserves_baseline( .await?; assert_eq!(warmup.body_json()["generate"], false); assert_eq!(warmup.body_json()["reasoning"]["effort"], "medium"); - if matches!( - startup, - PrewarmStartup::ResumeThenRollback | PrewarmStartup::ForkThenRollback - ) { - // Observing the warmup request guarantees that Medium is pinned before rollback. - test.codex - .submit(Op::ThreadRollback { num_turns: 1 }) - .await?; - let rollback = wait_for_event(&test.codex, |event| { - matches!(event, EventMsg::ThreadRolledBack(_) | EventMsg::Error(_)) - }) - .await; - assert!( - matches!(rollback, EventMsg::ThreadRolledBack(_)), - "rollback failed: {rollback:?}", - ); - } submit_thread_settings( &test.codex, ThreadSettingsOverrides { @@ -765,124 +735,6 @@ async fn reasoning_effort_override_disabled_on_resume_retires_update_at_compacti Ok(()) } -#[test_case(1, ReasoningEffort::High; "later turn keep changed selection")] -#[test_case(1, ReasoningEffort::Medium; "later turn match restored settings")] -#[test_case(2, ReasoningEffort::High; "through first turn")] -#[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn reasoning_effort_override_rollback_reestablishes_selected_effort( - num_turns: u32, - effort: ReasoningEffort, -) -> anyhow::Result<()> { - skip_if_no_network!(Ok(())); - #[derive(Default)] - struct ThreadIdle { - ready: Notify, - } - - impl ThreadLifecycleContributor for ThreadIdle { - fn on_thread_idle<'a>(&'a self, _input: ThreadIdleInput<'a>) -> ExtensionFuture<'a, ()> { - Box::pin(async move { - self.ready.notify_one(); - }) - } - } - - let idle = Arc::new(ThreadIdle::default()); - let mut extensions = ExtensionRegistryBuilder::new(); - extensions.thread_lifecycle_contributor(idle.clone()); - let server = responses::start_mock_server().await; - let first = responses::mount_sse_once( - &server, - responses::sse(vec![responses::ev_completed("first")]), - ) - .await; - let removed = responses::mount_sse_once( - &server, - responses::sse(vec![responses::ev_completed("removed")]), - ) - .await; - let replacement = responses::mount_sse_once( - &server, - responses::sse(vec![responses::ev_completed("replacement")]), - ) - .await; - let test = override_builder() - .with_extensions(Arc::new(extensions.build())) - .build_with_auto_env(&server) - .await?; - test.submit_text_turn("first turn").await?; - timeout(Duration::from_secs(/*secs*/ 10), idle.ready.notified()).await?; - submit_thread_settings( - &test.codex, - ThreadSettingsOverrides { - effort: Some(Some(ReasoningEffort::High)), - ..Default::default() - }, - ) - .await?; - test.submit_text_turn("removed turn").await?; - // Completion can be delivered before the active slot is cleared. Wait for - // actual idle so this test exercises effort replay, not rollback admission. - timeout(Duration::from_secs(/*secs*/ 10), idle.ready.notified()).await?; - test.codex.submit(Op::ThreadRollback { num_turns }).await?; - let rollback = wait_for_event(&test.codex, |event| { - matches!(event, EventMsg::ThreadRolledBack(_) | EventMsg::Error(_)) - }) - .await; - let EventMsg::ThreadRolledBack(rollback) = rollback else { - panic!("rollback failed: {rollback:?}"); - }; - assert_eq!(rollback.num_turns, num_turns); - submit_thread_settings( - &test.codex, - ThreadSettingsOverrides { - effort: Some(Some(effort.clone())), - ..Default::default() - }, - ) - .await?; - test.submit_text_turn("replacement turn").await?; - timeout(Duration::from_secs(/*secs*/ 10), idle.ready.notified()).await?; - - assert_eq!( - effort_updates(&first.single_request()), - [effort_update(ReasoningEffort::Medium)] - ); - assert_eq!( - effort_updates(&removed.single_request()), - [ - effort_update(ReasoningEffort::Medium), - effort_update(ReasoningEffort::High) - ] - ); - let request = replacement.single_request(); - assert_eq!(request.body_json()["reasoning"]["effort"], effort.as_str()); - let mut expected = if num_turns == 1 { - vec![effort_update(ReasoningEffort::Medium)] - } else { - Vec::new() - }; - expected.push(effort_update(effort.clone())); - assert_eq!(effort_updates(&request), expected); - let input = request.input(); - assert!( - !input - .iter() - .any(|item| item["content"][0]["text"] == "removed turn") - ); - let tail = responses::strip_response_item_ids_from_json(responses::strip_metadata_from_json( - Value::Array(input[input.len() - 2..].to_vec()), - )); - assert_eq!( - tail, - serde_json::json!([ - message("user", "replacement turn"), - effort_update(effort.clone()), - ]) - ); - Ok(()) -} - #[test_case(ReasoningEffort::Medium; "same selection")] #[test_case(ReasoningEffort::High; "changed selection")] #[tokio::test(flavor = "multi_thread", worker_threads = 2)] diff --git a/codex-rs/core/tests/suite/rollout_budget.rs b/codex-rs/core/tests/suite/rollout_budget.rs index 99761755e3..8192a3f0c5 100644 --- a/codex-rs/core/tests/suite/rollout_budget.rs +++ b/codex-rs/core/tests/suite/rollout_budget.rs @@ -1,14 +1,12 @@ use anyhow::Result; use codex_core::TurnInputRequest; use codex_core::config::RolloutBudgetConfig; -use codex_extension_api::ExtensionRegistryBuilder; use codex_features::Feature; use codex_model_provider_info::built_in_model_providers; use codex_protocol::protocol::CodexErrorInfo; use codex_protocol::protocol::EventMsg; use codex_protocol::protocol::Op; use codex_protocol::user_input::UserInput; -use core_test_support::ThreadIdle; use core_test_support::responses::ResponsesRequest; use core_test_support::responses::ev_assistant_message; use core_test_support::responses::ev_completed; @@ -24,7 +22,6 @@ use core_test_support::test_codex::test_codex; use core_test_support::wait_for_event; use pretty_assertions::assert_eq; use serde_json::json; -use std::sync::Arc; use std::time::Duration; use test_case::test_case; use tokio::time::timeout; @@ -468,56 +465,3 @@ async fn restates_the_current_remainder_after_compaction() -> Result<()> { Ok(()) } - -#[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn restates_the_current_remainder_after_rollback() -> Result<()> { - skip_if_no_network!(Ok(())); - - let server = start_mock_server().await; - let responses = mount_sse_sequence( - &server, - vec![ - sse(vec![ - ev_response_created("resp-1"), - ev_completed_with_tokens("resp-1", /*total_tokens*/ 30), - ]), - sse(vec![ev_response_created("resp-2"), ev_completed("resp-2")]), - ], - ) - .await; - let mut extensions = ExtensionRegistryBuilder::new(); - extensions.thread_lifecycle_contributor(Arc::new(ThreadIdle)); - let test = test_codex() - .with_extensions(Arc::new(extensions.build())) - .with_config(|config| { - config.rollout_budget = Some(RolloutBudgetConfig { - reminder_at_remaining_tokens: vec![50], - ..rollout_budget() - }); - }) - .build(&server) - .await?; - - test.submit_turn("rolled-back turn").await?; - ThreadIdle::wait(&test.codex).await; - test.codex - .submit(Op::ThreadRollback { num_turns: 1 }) - .await?; - wait_for_event(&test.codex, |event| { - if let EventMsg::Error(error) = event { - panic!("rollback failed: {error:?}"); - } - matches!(event, EventMsg::ThreadRolledBack(_)) - }) - .await; - test.submit_turn("turn after rollback").await?; - - let requests = responses.requests(); - assert_eq!( - rollout_budget_texts(&requests[1]), - vec![rollout_budget_message(/*remaining_tokens*/ 70)], - "rollback should rearm the current budget reminder without refunding usage" - ); - - Ok(()) -} diff --git a/codex-rs/core/tests/suite/snapshots/all__suite__compact_resume_fork__rollback_followup_turn_trims_context_updates.snap b/codex-rs/core/tests/suite/snapshots/all__suite__compact_resume_fork__rollback_followup_turn_trims_context_updates.snap deleted file mode 100644 index 925a810a43..0000000000 --- a/codex-rs/core/tests/suite/snapshots/all__suite__compact_resume_fork__rollback_followup_turn_trims_context_updates.snap +++ /dev/null @@ -1,23 +0,0 @@ ---- -source: core/tests/suite/compact_resume_fork.rs -expression: "context_snapshot::format_labeled_requests_snapshot(\"rollback trims pre-turn override context updates before the follow-up request\",\n&[(\"rolled-back turn request\", &requests[1]),\n(\"follow-up request after rollback\", &requests[2]),],\n&ContextSnapshotOptions::default().strip_capability_instructions().render_mode(ContextSnapshotRenderMode::KindWithTextPrefix\n{ max_chars: 96 }),)" ---- -Scenario: rollback trims pre-turn override context updates before the follow-up request - -## rolled-back turn request -00:message/developer: -01:message/user:> -02:message/user:turn 1 user -03:message/assistant:turn 1 assistant -04:message/developer:ROLLED_BACK_DEV_INSTRUCTIONS -05:message/user: -06:message/user:turn 2 user - -## follow-up request after rollback -00:message/developer: -01:message/user:> -02:message/user:turn 1 user -03:message/assistant:turn 1 assistant -04:message/developer:ROLLED_BACK_DEV_INSTRUCTIONS -05:message/user: -06:message/user:follow-up user diff --git a/codex-rs/core/tests/suite/snapshots/all__suite__compact_resume_fork__rollback_past_compaction_shapes.snap b/codex-rs/core/tests/suite/snapshots/all__suite__compact_resume_fork__rollback_past_compaction_shapes.snap deleted file mode 100644 index bb694af693..0000000000 --- a/codex-rs/core/tests/suite/snapshots/all__suite__compact_resume_fork__rollback_past_compaction_shapes.snap +++ /dev/null @@ -1,26 +0,0 @@ ---- -source: core/tests/suite/compact_resume_fork.rs -expression: "context_snapshot::format_labeled_requests_snapshot(\"rollback past compaction replay after rollback\",\n&[(\"compaction request\", &requests[1]), (\"before rollback\", &requests[2]),\n(\"after rollback\", &requests[3]),],\n&ContextSnapshotOptions::default().strip_capability_instructions().render_mode(ContextSnapshotRenderMode::KindWithTextPrefix\n{ max_chars: 64 }),)" ---- -Scenario: rollback past compaction replay after rollback - -## compaction request -00:message/developer: -01:message/user:> -02:message/user:hello world -03:message/assistant:FIRST_REPLY -04:message/user: - -## before rollback -00:message/user:hello world -01:message/user:\nSUMMARY_ONLY_CONTEXT -02:message/developer: -03:message/user:> -04:message/user:EDITED_AFTER_COMPACT - -## after rollback -00:message/user:hello world -01:message/user:\nSUMMARY_ONLY_CONTEXT -02:message/developer: -03:message/user:> -04:message/user:AFTER_ROLLBACK diff --git a/codex-rs/protocol/src/protocol.rs b/codex-rs/protocol/src/protocol.rs index 81d799b615..8fb81c28b7 100644 --- a/codex-rs/protocol/src/protocol.rs +++ b/codex-rs/protocol/src/protocol.rs @@ -743,12 +743,6 @@ pub enum Op { /// model. SetThreadMemoryMode { mode: ThreadMemoryMode }, - /// Request Codex to drop the last N user turns from in-memory context. - /// - /// This does not attempt to revert local filesystem changes. Clients are - /// responsible for undoing any edits on disk. - ThreadRollback { num_turns: u32 }, - /// Request a code review from the agent. Review { review_request: ReviewRequest }, @@ -962,7 +956,6 @@ impl Op { Self::ReloadUserConfig => "reload_user_config", Self::Compact => "compact", Self::SetThreadMemoryMode { .. } => "set_thread_memory_mode", - Self::ThreadRollback { .. } => "thread_rollback", Self::Review { .. } => "review", Self::ApproveGuardianDeniedAction { .. } => "approve_guardian_denied_action", Self::Shutdown => "shutdown", @@ -1405,7 +1398,8 @@ pub enum EventMsg { /// Conversation history was compacted (either automatically or manually). ContextCompacted(ContextCompactedEvent), - /// Conversation history was rolled back by dropping the last N user turns. + /// Legacy persisted marker for dropping the last N user turns. + /// Retained for replay of existing rollouts; live rollback operations are unsupported. ThreadRolledBack(ThreadRolledBackEvent), /// Agent has started a turn. @@ -1888,6 +1882,7 @@ pub enum CodexErrorInfo { ActiveTurnNotSteerable { turn_kind: NonSteerableTurnKind, }, + // Retained to deserialize errors recorded in legacy rollouts. ThreadRollbackFailed, Other, } diff --git a/codex-rs/rollout/src/model_context.rs b/codex-rs/rollout/src/model_context.rs index 3ea48b8138..ba09120cdd 100644 --- a/codex-rs/rollout/src/model_context.rs +++ b/codex-rs/rollout/src/model_context.rs @@ -95,7 +95,7 @@ impl ModelContextScan { self.active_segment.saw_compaction = true; } RolloutItem::EventMsg(EventMsg::ThreadRolledBack(_)) => { - // Paginated threads reject rollback. Keep old rollouts correct rather than + // Rollback markers only occur in legacy history. Keep old rollouts correct rather than // duplicating rollback survival semantics in this bounded selector. self.must_scan_to_start = true; } diff --git a/codex-rs/thread-store/src/store.rs b/codex-rs/thread-store/src/store.rs index 64672c43f7..267df60076 100644 --- a/codex-rs/thread-store/src/store.rs +++ b/codex-rs/thread-store/src/store.rs @@ -144,7 +144,7 @@ pub trait ThreadStore: Any + Send + Sync { /// already-durable thread data. fn discard_thread(&self, thread_id: ThreadId) -> ThreadStoreFuture<'_, ()>; - /// Loads persisted history for resume, fork, rollback, and memory jobs. + /// Loads persisted history for resume, fork, and memory jobs. fn load_history( &self, params: LoadThreadHistoryParams, diff --git a/codex-rs/thread-store/src/types.rs b/codex-rs/thread-store/src/types.rs index 67105ae595..28568b3e2b 100644 --- a/codex-rs/thread-store/src/types.rs +++ b/codex-rs/thread-store/src/types.rs @@ -153,7 +153,7 @@ pub struct AppendThreadItemsParams { pub items: Vec, } -/// Parameters for loading persisted history for resume, fork, rollback, and memory jobs. +/// Parameters for loading persisted history for resume, fork, and memory jobs. #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] pub struct LoadThreadHistoryParams { /// Thread id to load. diff --git a/codex-rs/tui/src/app.rs b/codex-rs/tui/src/app.rs index 85c070e1ae..a983f2734a 100644 --- a/codex-rs/tui/src/app.rs +++ b/codex-rs/tui/src/app.rs @@ -607,8 +607,7 @@ pub(crate) struct App { pub(crate) backtrack: crate::app_backtrack::BacktrackState, /// When set, the next draw rebuilds terminal scrollback from the retained transcript cells. /// - /// This is used after a confirmed thread rollback to ensure scrollback reflects the trimmed - /// transcript cells. + /// This keeps scrollback consistent with the retained transcript after backtracking. pub(crate) backtrack_render_pending: bool, pub(crate) feedback: codex_feedback::CodexFeedback, feedback_audience: FeedbackAudience, diff --git a/codex-rs/tui/src/pager_overlay.rs b/codex-rs/tui/src/pager_overlay.rs index fb9cbf287f..09b9e6114b 100644 --- a/codex-rs/tui/src/pager_overlay.rs +++ b/codex-rs/tui/src/pager_overlay.rs @@ -695,7 +695,7 @@ impl TranscriptOverlay { /// Replace committed transcript cells while keeping any cached in-progress output that is /// currently shown at the end of the overlay. /// - /// This is used when existing history is trimmed (for example after rollback) so the + /// This is used when existing history is replaced or trimmed so the /// transcript overlay immediately reflects the same committed cells as the main transcript. pub(crate) fn replace_cells(&mut self, cells: Vec>) { let follow_bottom = self.view.is_scrolled_to_bottom(); diff --git a/sdk/python/src/openai_codex/generated/v2_all.py b/sdk/python/src/openai_codex/generated/v2_all.py index f5e248e124..0d8184b30c 100644 --- a/sdk/python/src/openai_codex/generated/v2_all.py +++ b/sdk/python/src/openai_codex/generated/v2_all.py @@ -5833,21 +5833,6 @@ class ThreadRevertedNotification(BaseModel): thread_id: Annotated[str, Field(alias="threadId")] -class ThreadRollbackParams(BaseModel): - model_config = ConfigDict( - populate_by_name=True, - ) - num_turns: Annotated[ - int, - Field( - alias="numTurns", - description="The number of turns to drop from the end of the thread. Must be >= 1.\n\nThis only modifies the thread's history and does not revert local file changes that have been made by the agent. Clients are responsible for reverting these changes.", - ge=0, - ), - ] - thread_id: Annotated[str, Field(alias="threadId")] - - class ThreadSearchSortKey(Enum): created_at = "created_at" updated_at = "updated_at" @@ -6815,15 +6800,6 @@ class ThreadApproveGuardianDeniedActionRequest(BaseModel): params: ThreadApproveGuardianDeniedActionParams -class ThreadRollbackRequest(BaseModel): - model_config = ConfigDict( - populate_by_name=True, - ) - id: RequestId - method: Annotated[Literal["thread/rollback"], Field(title="Thread/rollbackRequestMethod")] - params: ThreadRollbackParams - - class ThreadRevertRequest(BaseModel): model_config = ConfigDict( populate_by_name=True, @@ -11767,7 +11743,7 @@ class Thread(BaseModel): turns: Annotated[ list[Turn], Field( - description="Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list." + description="Only populated on `thread/resume`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list." ), ] updated_at: Annotated[ @@ -11934,18 +11910,6 @@ class ThreadRevertResponse(BaseModel): ] = None -class ThreadRollbackResponse(BaseModel): - model_config = ConfigDict( - populate_by_name=True, - ) - thread: Annotated[ - Thread, - Field( - description="The updated thread after applying the rollback, with `turns` populated.\n\nThe ThreadItems stored in each Turn are lossy since we explicitly do not persist all agent interactions, such as command executions. This is the same behavior as `thread/resume`." - ), - ] - - class ThreadSearchResult(BaseModel): model_config = ConfigDict( populate_by_name=True, @@ -12169,7 +12133,6 @@ class ClientRequest( | ThreadCompactStartRequest | ThreadShellCommandRequest | ThreadApproveGuardianDeniedActionRequest - | ThreadRollbackRequest | ThreadRevertRequest | ThreadListRequest | ThreadSectionListRequest @@ -12277,7 +12240,6 @@ class ClientRequest( | ThreadCompactStartRequest | ThreadShellCommandRequest | ThreadApproveGuardianDeniedActionRequest - | ThreadRollbackRequest | ThreadRevertRequest | ThreadListRequest | ThreadSectionListRequest