From 555b82afa9b6dab81ca034ac61a2c8892844d670 Mon Sep 17 00:00:00 2001 From: riley-oai Date: Mon, 7 Sep 2026 04:22:40 +0000 Subject: [PATCH] Add opt-in MCP user-verification transport (#43352) ## Why Device-authenticated verification needs an app response outside automated approval and review. Previously, MCP user-verification requests were always cancelled. ## What changed - Add typed `openai/userVerification` elicitations carrying a title, description, and challenge through core and app-server. - Route verification to one connection enabled by trusted host activation. Restrict responses to that owner, exclude requests from replay, and cancel on disconnect or authentication changes, including account switches away and back. - Return proofs in `content`, discard response metadata, and cancel malformed acceptances. Suppress verification response logging and analytics, and send only a generic verification notice to realtime. - Keep the mode experimental and exclude it from stable schema exports. Capability advertisement remains disabled, and the TUI cancels verification requests. ## Testing Add coverage for owner isolation, disconnect and authentication races, proof response handling, automated-review bypass, inactive-host cancellation, stable schema filtering, and realtime payload exclusion. Update the MCP integration test to verify that an activated request holds the tool until the client responds. GitOrigin-RevId: c8c7b6691a3f7756682bbcca9def1df0d1feb906 --- .../app-server-exports-experimental.json.zst | Bin 153786 -> 153924 bytes .../app-server-exports-stable.json.zst | Bin 148121 -> 148173 bytes codex-rs/app-server-protocol/src/export.rs | 20 +- .../src/export_user_verification.rs | 57 ++++ .../src/export_user_verification_tests.rs | 39 +++ .../src/protocol/v2/mcp.rs | 24 +- codex-rs/app-server/README.md | 23 +- .../app-server/src/bespoke_event_handling.rs | 24 +- codex-rs/app-server/src/in_process.rs | 6 +- codex-rs/app-server/src/lib.rs | 5 +- codex-rs/app-server/src/message_processor.rs | 20 +- codex-rs/app-server/src/outgoing_message.rs | 117 ++++++- .../app-server/src/user_verification_auth.rs | 73 +++++ .../src/user_verification_ownership_tests.rs | 306 ++++++++++++++++++ .../src/user_verification_response.rs | 45 +++ .../src/user_verification_response_tests.rs | 36 +++ .../codex-mcp/src/connection_manager_tests.rs | 60 +++- codex-rs/codex-mcp/src/elicitation.rs | 46 ++- codex-rs/codex-mcp/src/elicitation_tests.rs | 195 ++++++++++- codex-rs/codex-mcp/src/rmcp_client.rs | 3 +- .../src/user_verification_elicitation.rs | 54 ++++ codex-rs/core/src/context/mod.rs | 2 + .../src/context/user_verification_notice.rs | 28 ++ codex-rs/core/src/session/handlers.rs | 6 +- codex-rs/core/src/session/turn.rs | 9 + codex-rs/core/src/session/turn_tests.rs | 21 ++ .../core/tests/suite/mcp_user_verification.rs | 60 +++- codex-rs/protocol/src/approvals.rs | 7 + .../tui/src/app/agents_overview_details.rs | 1 + codex-rs/tui/src/app/thread_routing.rs | 11 + codex-rs/tui/src/chatwidget/tool_requests.rs | 10 + 31 files changed, 1244 insertions(+), 64 deletions(-) create mode 100644 codex-rs/app-server-protocol/src/export_user_verification.rs create mode 100644 codex-rs/app-server-protocol/src/export_user_verification_tests.rs create mode 100644 codex-rs/app-server/src/user_verification_auth.rs create mode 100644 codex-rs/app-server/src/user_verification_ownership_tests.rs create mode 100644 codex-rs/app-server/src/user_verification_response.rs create mode 100644 codex-rs/app-server/src/user_verification_response_tests.rs create mode 100644 codex-rs/codex-mcp/src/user_verification_elicitation.rs create mode 100644 codex-rs/core/src/context/user_verification_notice.rs 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 9eba750ee02cb8d0dfc15a6a54b3f5ca87d25555..edd06876014fe2a70979d5f057c4a9402a383646 100644 GIT binary patch delta 138082 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
    JCKB8Xi{rT4!&22f3DEc2X$|&P=ipMt<7o- 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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 63d861ae4424205e2d0a6105504c98e7e80a5652..d93bfefb7dd225185002b81457c380d10e00b810 100644 GIT binary patch delta 18509 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 MX$LpKuy^GG1pxQ24gdfE delta 18431 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%0AK#hWH>Pxfq}pd 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"]; const JSON_V1_ALLOWLIST: &[&str] = &["InitializeParams", "InitializeResponse"]; @@ -271,6 +274,11 @@ fn filter_experimental_ts(out_dir: &Path) -> Result<()> { filter_request_ts(out_dir, "ServerRequest.ts", EXPERIMENTAL_SERVER_METHODS)?; filter_experimental_type_fields_ts(out_dir, ®istered_fields)?; remove_generated_type_files(out_dir, &experimental_method_types, "ts")?; + let elicitation_path = out_dir.join("v2/McpServerElicitationRequestParams.ts"); + if elicitation_path.exists() { + let content = fs::read_to_string(&elicitation_path)?; + fs::write(elicitation_path, user_verification::filter_ts(&content))?; + } Ok(()) } @@ -295,6 +303,11 @@ pub(crate) fn filter_experimental_ts_tree(tree: &mut BTreeMap) } for (path, content) in tree.iter_mut() { + if path.file_stem().and_then(|stem| stem.to_str()) + == Some("McpServerElicitationRequestParams") + { + *content = user_verification::filter_ts(content); + } let Some(type_name) = path.file_stem().and_then(|stem| stem.to_str()) else { continue; }; @@ -339,7 +352,7 @@ fn filter_request_ts_contents(mut content: String, experimental_methods: &[&str] let filtered_arms: Vec = arms .into_iter() .filter(|arm| { - extract_method_from_arm(arm) + extract_discriminator_from_arm(arm, "method") .is_none_or(|method| !experimental_methods.contains(method.as_str())) }) .collect(); @@ -425,6 +438,7 @@ fn filter_experimental_schema(bundle: &mut Value) -> Result<()> { prune_experimental_methods(bundle, EXPERIMENTAL_CLIENT_METHODS); prune_experimental_methods(bundle, EXPERIMENTAL_SERVER_METHODS); remove_experimental_method_type_definitions(bundle); + user_verification::filter_json(bundle); Ok(()) } @@ -804,14 +818,14 @@ fn split_top_level_multi(input: &str, delimiters: &[char]) -> Vec { parts } -fn extract_method_from_arm(arm: &str) -> Option { +fn extract_discriminator_from_arm(arm: &str, discriminator: &str) -> Option { let (open, close) = find_top_level_brace_span(arm)?; let inner = &arm[open + 1..close]; for field in split_top_level(inner, ',') { let Some((name, value)) = parse_property(field.as_str()) else { continue; }; - if name != "method" { + if name != discriminator { continue; } let value = value.trim_start(); diff --git a/codex-rs/app-server-protocol/src/export_user_verification.rs b/codex-rs/app-server-protocol/src/export_user_verification.rs new file mode 100644 index 0000000000..b0102ecafc --- /dev/null +++ b/codex-rs/app-server-protocol/src/export_user_verification.rs @@ -0,0 +1,57 @@ +//! Removes the opt-in verification mode from the flattened stable elicitation union. +//! +//! `ExperimentalApi` enum annotations currently drive runtime checks only. Keep this new mode +//! out of stable exports without changing the export behavior of existing gated enum variants. + +use super::extract_discriminator_from_arm; +use super::split_top_level; +use super::split_type_alias; +use serde_json::Value; + +const MODE: &str = "openai/userVerification"; + +pub(super) fn filter_ts(content: &str) -> String { + let Some((prefix, body, suffix)) = split_type_alias(content) else { + return content.to_string(); + }; + let parts = split_top_level(&body, '&') + .into_iter() + .map(|part| { + let Some(union) = part + .strip_prefix('(') + .and_then(|part| part.strip_suffix(')')) + else { + return part; + }; + let arms = split_top_level(union, '|') + .into_iter() + .filter(|arm| extract_discriminator_from_arm(arm, "mode").as_deref() != Some(MODE)) + .collect::>(); + format!("({})", arms.join(" | ")) + }) + .collect::>(); + format!("{prefix} {}{suffix}", parts.join(" & ")) +} + +pub(super) fn filter_json(value: &mut Value) { + match value { + Value::Array(items) => { + items.retain(|item| { + item.pointer("/properties/mode/enum") != Some(&serde_json::json!([MODE])) + }); + for item in items { + filter_json(item); + } + } + Value::Object(map) => { + for entry in map.values_mut() { + filter_json(entry); + } + } + Value::Null | Value::Bool(_) | Value::Number(_) | Value::String(_) => {} + } +} + +#[cfg(test)] +#[path = "export_user_verification_tests.rs"] +mod tests; diff --git a/codex-rs/app-server-protocol/src/export_user_verification_tests.rs b/codex-rs/app-server-protocol/src/export_user_verification_tests.rs new file mode 100644 index 0000000000..4a5d2ef3f6 --- /dev/null +++ b/codex-rs/app-server-protocol/src/export_user_verification_tests.rs @@ -0,0 +1,39 @@ +//! Checks that filtering the new mode preserves the stable elicitation contracts. + +use super::*; +use crate::McpServerElicitationRequestParams; +use crate::TS; +use anyhow::Result; +use pretty_assertions::assert_eq; + +#[test] +fn verification_mode_is_removed_from_flattened_typescript_only_for_stable_exports() -> Result<()> { + let generated = McpServerElicitationRequestParams::export_to_string()?; + assert!(generated.contains(MODE)); + let filtered = filter_ts(&generated); + assert!(!filtered.contains(MODE)); + assert_eq!(filter_ts(&filtered), filtered); + for mode in ["form", "openai/form", "openaiForm", "url"] { + assert!(filtered.contains(&format!("\"mode\": \"{mode}\""))); + } + assert!(filtered.contains("threadId: string")); + assert!(filtered.contains("requestedSchema: McpElicitationSchema")); + Ok(()) +} + +#[test] +fn verification_mode_is_removed_from_inline_json_without_changing_other_modes() -> Result<()> { + let generated = serde_json::to_value(schemars::schema_for!(McpServerElicitationRequestParams))?; + assert!(generated.to_string().contains(MODE)); + let mut expected = generated.clone(); + let modes = expected["oneOf"].as_array_mut().expect("flattened modes"); + let verification = modes.remove(0); + assert_eq!( + verification["properties"]["mode"]["enum"], + serde_json::json!([MODE]) + ); + let mut filtered = generated; + filter_json(&mut filtered); + assert_eq!(filtered, expected); + Ok(()) +} diff --git a/codex-rs/app-server-protocol/src/protocol/v2/mcp.rs b/codex-rs/app-server-protocol/src/protocol/v2/mcp.rs index c1ec63c55f..25a61167b3 100644 --- a/codex-rs/app-server-protocol/src/protocol/v2/mcp.rs +++ b/codex-rs/app-server-protocol/src/protocol/v2/mcp.rs @@ -1,6 +1,7 @@ use super::shared::v2_enum_from_core; use crate::JsonSchema; use crate::TS; +use codex_experimental_api_macros::ExperimentalApi; use codex_protocol::approvals::ElicitationRequest as CoreElicitationRequest; use codex_protocol::items::McpToolCallError as CoreMcpToolCallError; use codex_protocol::mcp::CallToolResult as CoreMcpCallToolResult; @@ -379,7 +380,7 @@ impl From for McpServerElicitationAction { } } -#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, JsonSchema, TS)] +#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, JsonSchema, TS, ExperimentalApi)] #[serde(rename_all = "camelCase")] #[ts(export_to = "v2/")] pub struct McpServerElicitationRequestParams { @@ -393,6 +394,7 @@ pub struct McpServerElicitationRequestParams { pub turn_id: Option, pub server_name: String, #[serde(flatten)] + #[experimental(nested)] pub request: McpServerElicitationRequest, // TODO: When core can correlate an elicitation with an MCP tool call, expose the associated // McpToolCall item id here as an optional field. The current core event does not carry that @@ -744,11 +746,20 @@ pub struct McpElicitationConstOption { pub title: String, } -#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, JsonSchema, TS)] +#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, JsonSchema, TS, ExperimentalApi)] #[serde(tag = "mode", rename_all = "camelCase")] #[ts(tag = "mode")] #[ts(export_to = "v2/")] pub enum McpServerElicitationRequest { + /// A device-authenticated approval; accepted responses contain the proof in `content`. + #[experimental("mcpServer/elicitation/request.userVerification")] + #[serde(rename = "openai/userVerification", rename_all = "camelCase")] + #[ts(rename = "openai/userVerification", rename_all = "camelCase")] + UserVerification { + title: String, + description: String, + challenge: String, + }, #[serde(rename_all = "camelCase")] #[ts(rename_all = "camelCase")] Form { @@ -794,6 +805,15 @@ impl TryFrom for McpServerElicitationRequest { fn try_from(value: CoreElicitationRequest) -> Result { match value { + CoreElicitationRequest::UserVerification { + title, + description, + challenge, + } => Ok(Self::UserVerification { + title, + description, + challenge, + }), CoreElicitationRequest::Form { meta, message, diff --git a/codex-rs/app-server/README.md b/codex-rs/app-server/README.md index 90f4317de7..fcfdc15d5a 100644 --- a/codex-rs/app-server/README.md +++ b/codex-rs/app-server/README.md @@ -2061,12 +2061,13 @@ Order of messages: - an OpenAI form request: `{ "mode": "openaiForm", "message": "...", "requestedSchema": { ... } }` - a legacy OpenAI extended form request: `{ "mode": "openai/form", "message": "...", "requestedSchema": { ... } }` - a URL request: `{ "mode": "url", "message": "...", "url": "...", "elicitationId": "..." }` + - a user-verification request: `{ "mode": "openai/userVerification", "title": "...", "description": "...", "challenge": "AQID" }` 2. Client response — `{ "action": "accept", "content": ... }`, `{ "action": "decline", "content": null }`, or `{ "action": "cancel", "content": null }`. 3. `serverRequest/resolved` — `{ threadId, requestId }` confirms the pending request has been resolved or cleared, including lifecycle cleanup on turn start/complete/interrupt. `turnId` is best-effort. When the elicitation is correlated with an active turn, the request includes that turn id; otherwise it is `null`. -MCP `openai/elicitation/create` requests must explicitly specify `mode: "form"`. +MCP form requests to `openai/elicitation/create` must explicitly specify `mode: "form"`. App-server forwards them as `mode: "openaiForm"`, preserving `requestedSchema` as opaque JSON, including `x-openai-*` annotations. The legacy `openai/form` route remains independent and also preserves its schema. @@ -2075,9 +2076,27 @@ The client owns validation and rendering. Graphical clients show an unsupported state for unknown semantic inputs, never a partial form or generic approval, and wait for the user to decline or cancel instead of returning a JSON-RPC error. The TUI automatically declines OpenAI forms, including requests replayed -from another client. Capability advertisement describes the session's initial +from another client. Form capability advertisement describes the session's initial client, not all clients that may later attach. +User verification uses the same MCP method with `mode: "openai/userVerification"`. +App-server forwards the title, description, and challenge to one connected app +enabled by trusted host activation. +The app returns `{ "action": "accept", "content": { "credentialId": "...", "signature": "..." } }`. +TUI/Desktop connected to local app-server can obtain that proof through `userVerification/verify`; a mobile app +can sign on its own device and answer directly. Neither path returns the proof in +metadata or requires a previous `verify` call to resolve the elicitation. + +Verification bypasses automated approval and review. Only the owning connection +can respond; disconnect, turn interruption, or a cached authentication change +cancels the request. Authentication revisions are checked even when an account +switches away and back before its change notification is processed. +Malformed acceptance without a proof becomes cancellation. The MCP boundary +validates bounded, unpadded base64url credential IDs and signatures before forwarding. +The Codex MCP layer will advertise support when the complete device/UI integration +is enabled; this transport groundwork does not enable advertisement or add a UI +capability field. + For MCP tool approval elicitations, form request `meta` includes `codex_approval_kind: "mcp_tool_call"` and may include `persist: "session"`, `persist: "always"`, or `persist: ["session", "always"]` to advertise whether diff --git a/codex-rs/app-server/src/bespoke_event_handling.rs b/codex-rs/app-server/src/bespoke_event_handling.rs index 92c595b7e1..7c86ecb84e 100644 --- a/codex-rs/app-server/src/bespoke_event_handling.rs +++ b/codex-rs/app-server/src/bespoke_event_handling.rs @@ -869,6 +869,10 @@ pub(crate) async fn apply_bespoke_event_handling( }); } EventMsg::ElicitationRequest(request) => { + let user_verification = matches!( + &request.request, + codex_protocol::approvals::ElicitationRequest::UserVerification { .. } + ); let permission_guard = thread_watch_manager .note_permission_requested(&conversation_id.to_string()) .await; @@ -918,7 +922,10 @@ pub(crate) async fn apply_bespoke_event_handling( request.server_name, request.id, pending_request_id, - rx, + PendingMcpElicitationResponse { + receiver: rx, + user_verification, + }, conversation, thread_state, permission_guard, @@ -1811,19 +1818,28 @@ async fn on_request_user_input_response( } } +struct PendingMcpElicitationResponse { + receiver: oneshot::Receiver, + user_verification: bool, +} + async fn on_mcp_server_elicitation_response( server_name: String, request_id: codex_protocol::mcp::RequestId, pending_request_id: RequestId, - receiver: oneshot::Receiver, + pending: PendingMcpElicitationResponse, conversation: Arc, thread_state: Arc>, permission_guard: ThreadWatchActiveGuard, ) { - let response = receiver.await; + let response = pending.receiver.await; resolve_server_request_on_thread_listener(&thread_state, pending_request_id).await; drop(permission_guard); - let response = mcp_server_elicitation_response_from_client_result(response); + let response = if pending.user_verification { + crate::user_verification_response::from_client_result(response) + } else { + mcp_server_elicitation_response_from_client_result(response) + }; if let Err(err) = conversation .submit(Op::ResolveElicitation { diff --git a/codex-rs/app-server/src/in_process.rs b/codex-rs/app-server/src/in_process.rs index d8613e90c5..bc012ce7c9 100644 --- a/codex-rs/app-server/src/in_process.rs +++ b/codex-rs/app-server/src/in_process.rs @@ -630,12 +630,12 @@ async fn start_uninitialized(args: InProcessStartArgs) -> IoResult { outgoing_message_sender - .notify_client_response(request_id, result) + .notify_client_response(IN_PROCESS_CONNECTION_ID, request_id, result) .await; } Some(InProcessClientMessage::ServerRequestError { request_id, error }) => { outgoing_message_sender - .notify_client_error(request_id, error) + .notify_client_error(IN_PROCESS_CONNECTION_ID, request_id, error) .await; } Some(InProcessClientMessage::Shutdown { done_tx }) => { @@ -704,7 +704,7 @@ async fn start_uninitialized(args: InProcessStartArgs) -> IoResult unreachable!("we just sent a ServerRequest variant"), }; outgoing_message_sender - .notify_client_error(request_id, error) + .notify_client_error(IN_PROCESS_CONNECTION_ID, request_id, error) .await; } } diff --git a/codex-rs/app-server/src/lib.rs b/codex-rs/app-server/src/lib.rs index 82c51803c4..c4ec80c9bf 100644 --- a/codex-rs/app-server/src/lib.rs +++ b/codex-rs/app-server/src/lib.rs @@ -134,6 +134,7 @@ mod thread_status; mod transport; mod turn_cost_worker; mod user_verification; +mod user_verification_response; pub use crate::code_mode_host::AppServerCodeModeHostArgs; pub use crate::code_mode_host::CodeModeHostTransport; @@ -1135,7 +1136,7 @@ pub async fn run_main_with_transport_options( warn!("dropping response from unknown connection: {connection_id:?}"); continue; } - processor.process_response(response).await; + processor.process_response(connection_id, response).await; } JSONRPCMessage::Notification(notification) => { if !connections.contains_key(&connection_id) { @@ -1149,7 +1150,7 @@ pub async fn run_main_with_transport_options( warn!("dropping error from unknown connection: {connection_id:?}"); continue; } - processor.process_error(err).await; + processor.process_error(connection_id, err).await; } } } diff --git a/codex-rs/app-server/src/message_processor.rs b/codex-rs/app-server/src/message_processor.rs index 3be4c9770e..da84311484 100644 --- a/codex-rs/app-server/src/message_processor.rs +++ b/codex-rs/app-server/src/message_processor.rs @@ -288,6 +288,7 @@ impl MessageProcessor { plugin_startup_tasks, } = args; let thread_state_manager = ThreadStateManager::new(); + outgoing.watch_user_verification_auth(Arc::clone(&auth_manager)); // The thread store is intentionally process-scoped. Config reloads can // affect per-thread behavior, but they must not move newly started, // resumed, or forked threads to a different persistence backend/root. @@ -804,6 +805,9 @@ impl MessageProcessor { session_state: &ConnectionSessionState, ) { session_state.rpc_gate.close().await; + self.outgoing + .disconnect_user_verification_connection(connection_id) + .await; session_state.mcp_event_streams.clear().await; if timeout( CONNECTION_RPC_DRAIN_TIMEOUT, @@ -835,14 +839,22 @@ impl MessageProcessor { } /// Handle a standalone JSON-RPC response originating from the peer. - pub(crate) async fn process_response(&self, response: JSONRPCResponse) { + pub(crate) async fn process_response( + &self, + connection_id: ConnectionId, + response: JSONRPCResponse, + ) { let JSONRPCResponse { id, result, .. } = response; - self.outgoing.notify_client_response(id, result).await + self.outgoing + .notify_client_response(connection_id, id, result) + .await } /// Handle an error object received from the peer. - pub(crate) async fn process_error(&self, err: JSONRPCError) { - self.outgoing.notify_client_error(err.id, err.error).await; + pub(crate) async fn process_error(&self, connection_id: ConnectionId, err: JSONRPCError) { + self.outgoing + .notify_client_error(connection_id, err.id, err.error) + .await; } async fn handle_client_request( diff --git a/codex-rs/app-server/src/outgoing_message.rs b/codex-rs/app-server/src/outgoing_message.rs index 6904cfb389..e6e0ae87a4 100644 --- a/codex-rs/app-server/src/outgoing_message.rs +++ b/codex-rs/app-server/src/outgoing_message.rs @@ -1,5 +1,7 @@ use std::collections::HashMap; +use std::collections::HashSet; use std::sync::Arc; +use std::sync::OnceLock; use std::sync::atomic::AtomicI64; use std::sync::atomic::Ordering; use std::time::SystemTime; @@ -44,6 +46,9 @@ pub(crate) type ClientRequestResult = std::result::Result>, + verification_connections: Mutex>, next_server_request_id: AtomicI64, sender: mpsc::Sender, request_id_to_callback: Mutex>, @@ -120,6 +127,9 @@ pub(crate) struct ThreadScopedOutgoingMessageSender { } struct PendingCallbackEntry { + verification_owner: Option, + verification_auth_revision: Option, + verification_identity: Option, callback: oneshot::Sender, thread_id: Option, request: ServerRequest, @@ -221,6 +231,8 @@ impl OutgoingMessageSender { analytics_events_client: AnalyticsEventsClient, ) -> Self { Self { + verification_auth: OnceLock::new(), + verification_connections: Mutex::new(HashSet::new()), next_server_request_id: AtomicI64::new(0), sender, request_id_to_callback: Mutex::new(HashMap::new()), @@ -240,6 +252,8 @@ impl OutgoingMessageSender { } pub(crate) async fn connection_closed(&self, connection_id: ConnectionId) { + self.disconnect_user_verification_connection(connection_id) + .await; let mut request_contexts = self.request_contexts.lock().await; request_contexts.retain(|request_id, _| request_id.connection_id != connection_id); } @@ -301,13 +315,50 @@ impl OutgoingMessageSender { let id = self.next_request_id(); let outgoing_message_id = id.clone(); let request = request.request_with_id(outgoing_message_id.clone()); - + let user_verification = matches!( + &request, + ServerRequest::McpServerElicitationRequest { params, .. } + if matches!(¶ms.request, codex_app_server_protocol::McpServerElicitationRequest::UserVerification { .. }) + ); + // Snapshot before waiting on eligibility or callback locks. A request cannot inherit + // whichever account happens to be current after an unrelated operation releases a lock. + let verification_auth_revision = user_verification + .then(|| self.verification_auth_revision()) + .flatten(); + let verification_identity = user_verification + .then(|| self.verification_identity()) + .flatten(); + let auth_changed = || { + user_verification + && (verification_auth_revision != self.verification_auth_revision() + || verification_identity != self.verification_identity()) + }; let (tx_approve, rx_approve) = oneshot::channel(); + // One app owns this ceremony. Reconnect and other subscribers cannot answer it. + let verification_owner = if user_verification { + let eligible = self.verification_connections.lock().await; + connection_ids + .and_then(|ids| ids.iter().find(|id| eligible.contains(*id))) + .copied() + } else { + None + }; + if user_verification && (verification_owner.is_none() || auth_changed()) { + return (outgoing_message_id, rx_approve); + } + let connection_ids = if user_verification { + verification_owner.as_ref().map(std::slice::from_ref) + } else { + connection_ids + }; { let mut request_id_to_callback = self.request_id_to_callback.lock().await; request_id_to_callback.insert( id, PendingCallbackEntry { + verification_owner, + verification_auth_revision, + verification_identity: verification_identity.clone(), callback: tx_approve, thread_id, request: request.clone(), @@ -315,6 +366,18 @@ impl OutgoingMessageSender { }, ); } + // Disconnect may finish its callback cleanup before registration acquires the lock. + // Recheck afterward so that ordering cannot leave an orphaned verification callback. + if let Some(owner) = verification_owner { + let eligible = self.verification_connections.lock().await.contains(&owner); + if !eligible || auth_changed() { + self.request_id_to_callback + .lock() + .await + .remove(&outgoing_message_id); + return (outgoing_message_id, rx_approve); + } + } let outgoing_message = OutgoingMessage::Request(request.clone()); let send_result = match connection_ids { @@ -380,13 +443,20 @@ impl OutgoingMessageSender { } } - pub(crate) async fn notify_client_response(&self, id: RequestId, result: Result) { - let entry = self.take_request_callback(&id).await; + pub(crate) async fn notify_client_response( + &self, + connection_id: ConnectionId, + id: RequestId, + result: Result, + ) { + let entry = self.take_connection_callback(connection_id, &id).await; match entry { Some((id, entry)) => { let completed_at_ms = now_unix_timestamp_ms(); - if let Ok(response) = entry.request.response_from_result(result.clone()) { + if entry.verification_owner.is_none() + && let Ok(response) = entry.request.response_from_result(result.clone()) + { tracing::info!("<- response: {response:?}"); if !matches!(response, ServerResponse::PermissionsRequestApproval { .. }) { self.analytics_events_client @@ -403,8 +473,13 @@ impl OutgoingMessageSender { } } - pub(crate) async fn notify_client_error(&self, id: RequestId, error: JSONRPCErrorError) { - let entry = self.take_request_callback(&id).await; + pub(crate) async fn notify_client_error( + &self, + connection_id: ConnectionId, + id: RequestId, + error: JSONRPCErrorError, + ) { + let entry = self.take_connection_callback(connection_id, &id).await; match entry { Some((id, entry)) => { @@ -462,6 +537,27 @@ impl OutgoingMessageSender { request_id_to_callback.remove_entry(id) } + async fn take_connection_callback( + &self, + connection_id: ConnectionId, + id: &RequestId, + ) -> Option<(RequestId, PendingCallbackEntry)> { + let mut callbacks = self.request_id_to_callback.lock().await; + let entry = callbacks.get(id)?; + if let Some(owner) = entry.verification_owner { + if owner != connection_id { + return None; + } + if entry.verification_identity != self.verification_identity() + || entry.verification_auth_revision != self.verification_auth_revision() + { + callbacks.remove(id); + return None; + } + } + callbacks.remove_entry(id) + } + pub(crate) async fn pending_requests_for_thread( &self, thread_id: ThreadId, @@ -470,7 +566,8 @@ impl OutgoingMessageSender { let mut requests = request_id_to_callback .values() .filter_map(|entry| { - (entry.thread_id == Some(thread_id)).then_some(entry.request.clone()) + (entry.thread_id == Some(thread_id) && entry.verification_owner.is_none()) + .then_some(entry.request.clone()) }) .collect::>(); requests.sort_by(|left, right| left.id().cmp(right.id())); @@ -738,6 +835,10 @@ fn timestamped_server_notification(notification: ServerNotification) -> Outgoing }) } +#[cfg(test)] +#[path = "user_verification_ownership_tests.rs"] +mod user_verification_ownership_tests; + #[cfg(test)] mod tests { use std::time::Duration; @@ -1316,7 +1417,7 @@ mod tests { let error = internal_error("refresh failed"); outgoing - .notify_client_error(request_id, error.clone()) + .notify_client_error(ConnectionId(1), request_id, error.clone()) .await; let result = timeout(Duration::from_secs(1), wait_for_result) diff --git a/codex-rs/app-server/src/user_verification_auth.rs b/codex-rs/app-server/src/user_verification_auth.rs new file mode 100644 index 0000000000..9a27d26a3d --- /dev/null +++ b/codex-rs/app-server/src/user_verification_auth.rs @@ -0,0 +1,73 @@ +//! Cancels device ceremonies when cached authentication changes. + +use codex_login::AuthManager; + +use super::*; + +#[derive(Clone, PartialEq, Eq)] +pub(super) struct Identity { + user_id: String, + account_id: String, +} + +impl OutgoingMessageSender { + /// Trusted host activation enables a UI integration after its signing path is available. + #[allow(dead_code)] // Called by the subsequent host activation change. + pub(crate) async fn enable_user_verification_connection(&self, connection_id: ConnectionId) { + self.verification_connections + .lock() + .await + .insert(connection_id); + } + + /// Stop routing ceremonies immediately, without waiting for unrelated RPCs to drain. + pub(crate) async fn disconnect_user_verification_connection( + &self, + connection_id: ConnectionId, + ) { + self.verification_connections + .lock() + .await + .remove(&connection_id); + self.request_id_to_callback + .lock() + .await + .retain(|_, entry| entry.verification_owner != Some(connection_id)); + } + + pub(crate) fn watch_user_verification_auth(self: &Arc, auth_manager: Arc) { + let mut changes = auth_manager.auth_change_receiver(); + if self.verification_auth.set(auth_manager).is_err() { + return; + } + let outgoing = Arc::downgrade(self); + tokio::spawn(async move { + while changes.changed().await.is_ok() { + let Some(outgoing) = outgoing.upgrade() else { + break; + }; + // Compare revisions, since watch can coalesce an account switch and switch back. + // Requests created after the change already belong to the new auth revision. + let mut callbacks = outgoing.request_id_to_callback.lock().await; + let revision = outgoing.verification_auth_revision(); + callbacks.retain(|_, entry| { + entry.verification_owner.is_none() + || entry.verification_auth_revision == revision + }); + } + }); + } + + pub(super) fn verification_identity(&self) -> Option { + let auth = self.verification_auth.get()?.auth_cached()?; + Some(Identity { + user_id: auth.get_chatgpt_user_id()?, + account_id: auth.get_account_id()?, + }) + } + + pub(super) fn verification_auth_revision(&self) -> Option { + let changes = self.verification_auth.get()?.auth_change_receiver(); + Some(*changes.borrow()) + } +} diff --git a/codex-rs/app-server/src/user_verification_ownership_tests.rs b/codex-rs/app-server/src/user_verification_ownership_tests.rs new file mode 100644 index 0000000000..a2a0e04d5f --- /dev/null +++ b/codex-rs/app-server/src/user_verification_ownership_tests.rs @@ -0,0 +1,306 @@ +use super::*; +use app_test_support::ChatGptAuthFixture; +use app_test_support::write_chatgpt_auth; +use codex_app_server_protocol::McpServerElicitationRequest; +use codex_app_server_protocol::McpServerElicitationRequestParams; +use codex_config::types::AuthCredentialsStoreMode; +use codex_login::AuthManager; +use codex_login::CodexAuth; +use pretty_assertions::assert_eq; +use serde_json::json; +use std::future::Future; +use std::task::Context; +use std::task::Waker; + +fn request(thread_id: ThreadId) -> ServerRequestPayload { + ServerRequestPayload::McpServerElicitationRequest(McpServerElicitationRequestParams { + thread_id: thread_id.to_string(), + turn_id: Some("turn-1".into()), + server_name: "plugin-service".into(), + request: McpServerElicitationRequest::UserVerification { + title: "Approve".into(), + description: String::new(), + challenge: "AQID".into(), + }, + }) +} + +#[tokio::test] +async fn verification_is_delivered_to_one_owner_and_other_connections_cannot_resolve_it() { + let (sender, mut messages) = mpsc::channel(4); + let outgoing = OutgoingMessageSender::new(sender, AnalyticsEventsClient::disabled()); + outgoing + .enable_user_verification_connection(ConnectionId(1)) + .await; + let thread_id = ThreadId::new(); + let (id, response) = outgoing + .send_request_to_connections( + Some(&[ConnectionId(2), ConnectionId(1)]), + request(thread_id), + Some(thread_id), + ) + .await; + assert!(matches!( + messages.recv().await, + Some(OutgoingEnvelope::ToConnection { + connection_id: ConnectionId(1), + .. + }) + )); + assert!(messages.try_recv().is_err()); + let proof = json!({"action": "accept", "content": {"credentialId": "AQID", "signature": "BAUG"}, "_meta": null}); + outgoing + .notify_client_response(ConnectionId(2), id.clone(), proof.clone()) + .await; + outgoing + .notify_client_error(ConnectionId(2), id.clone(), internal_error("not the owner")) + .await; + assert!( + outgoing + .request_id_to_callback + .lock() + .await + .contains_key(&id) + ); + outgoing + .replay_requests_to_connection_for_thread(ConnectionId(2), thread_id) + .await; + assert!(messages.try_recv().is_err()); + outgoing + .notify_client_response(ConnectionId(1), id.clone(), proof.clone()) + .await; + assert_eq!(response.await.unwrap(), Ok(proof)); + assert!( + !outgoing + .request_id_to_callback + .lock() + .await + .contains_key(&id) + ); +} + +#[tokio::test] +async fn verification_cancels_when_its_owner_disconnects() { + let (sender, mut messages) = mpsc::channel(4); + let outgoing = OutgoingMessageSender::new(sender, AnalyticsEventsClient::disabled()); + outgoing + .enable_user_verification_connection(ConnectionId(1)) + .await; + let thread_id = ThreadId::new(); + let (id, response) = outgoing + .send_request_to_connections( + Some(&[ConnectionId(1)]), + request(thread_id), + Some(thread_id), + ) + .await; + messages.recv().await.unwrap(); + outgoing.connection_closed(ConnectionId(2)).await; + assert!( + outgoing + .request_id_to_callback + .lock() + .await + .contains_key(&id) + ); + outgoing.connection_closed(ConnectionId(1)).await; + assert!(response.await.is_err()); + assert!( + !outgoing + .request_id_to_callback + .lock() + .await + .contains_key(&id) + ); +} + +#[tokio::test] +async fn verification_disconnect_during_registration_leaves_no_callback_or_request() { + let (sender, mut messages) = mpsc::channel(4); + let outgoing = OutgoingMessageSender::new(sender, AnalyticsEventsClient::disabled()); + outgoing + .enable_user_verification_connection(ConnectionId(1)) + .await; + let thread_id = ThreadId::new(); + let connection_ids = [ConnectionId(1)]; + let mut registration = std::pin::pin!(outgoing.send_request_to_connections( + Some(&connection_ids), + request(thread_id), + Some(thread_id), + )); + let mut disconnect = std::pin::pin!(outgoing.connection_closed(ConnectionId(1))); + { + // Suspend registration at the callback lock, then let disconnect remove eligibility. + let _callbacks = outgoing.request_id_to_callback.lock().await; + let mut context = Context::from_waker(Waker::noop()); + assert!(registration.as_mut().poll(&mut context).is_pending()); + assert!(disconnect.as_mut().poll(&mut context).is_pending()); + assert!( + outgoing + .verification_connections + .try_lock() + .expect("registration must release eligibility before waiting for callbacks") + .is_empty() + ); + } + let ((id, response), ()) = tokio::join!(registration, disconnect); + assert!(response.await.is_err()); + assert!(messages.try_recv().is_err()); + assert!( + !outgoing + .request_id_to_callback + .lock() + .await + .contains_key(&id) + ); +} + +#[tokio::test] +async fn verification_without_a_connected_app_has_no_pending_callback() { + let (sender, mut messages) = mpsc::channel(4); + let outgoing = OutgoingMessageSender::new(sender, AnalyticsEventsClient::disabled()); + outgoing + .enable_user_verification_connection(ConnectionId(1)) + .await; + let thread_id = ThreadId::new(); + let (_, response) = outgoing + .send_request_to_connections(Some(&[]), request(thread_id), Some(thread_id)) + .await; + assert!(response.await.is_err()); + assert!(messages.try_recv().is_err()); + assert!(outgoing.request_id_to_callback.lock().await.is_empty()); +} + +async fn auth_manager(home: &std::path::Path) -> Arc { + let auth = AuthManager::from_auth_for_testing_with_home( + CodexAuth::create_dummy_chatgpt_auth_for_testing(), + home.to_path_buf(), + ); + write_auth(home, "token-1", "account-1"); + reload_auth(&auth).await; + auth +} + +async fn reload_auth(auth: &AuthManager) { + let changes = auth.auth_change_receiver(); + let revision = *changes.borrow(); + // reload's boolean compares auth modes; the watch revision also detects token/account changes. + auth.reload().await; + assert_eq!(*changes.borrow(), revision + 1); +} + +fn write_auth(home: &std::path::Path, token: &str, account: &str) { + write_chatgpt_auth( + home, + ChatGptAuthFixture::new(token) + .chatgpt_user_id("user-1") + .account_id(account) + .chatgpt_account_id(account), + AuthCredentialsStoreMode::File, + ) + .unwrap(); +} + +#[tokio::test] +async fn auth_changes_cancel_user_verification() { + let home = tempfile::tempdir().unwrap(); + let auth = auth_manager(home.path()).await; + let (sender, mut messages) = mpsc::channel(4); + let outgoing = Arc::new(OutgoingMessageSender::new( + sender, + AnalyticsEventsClient::disabled(), + )); + outgoing.watch_user_verification_auth(Arc::clone(&auth)); + outgoing + .enable_user_verification_connection(ConnectionId(1)) + .await; + let thread_id = ThreadId::new(); + for (token, account) in [("token-2", "account-1"), ("token-3", "account-2")] { + let (_, response) = outgoing + .send_request_to_connections( + Some(&[ConnectionId(1)]), + request(thread_id), + Some(thread_id), + ) + .await; + messages.recv().await.unwrap(); + write_auth(home.path(), token, account); + reload_auth(&auth).await; + assert!( + tokio::time::timeout(std::time::Duration::from_secs(5), response) + .await + .unwrap() + .is_err() + ); + } +} + +#[tokio::test] +async fn account_switch_back_rejects_proof_before_the_auth_watcher_runs() { + let home = tempfile::tempdir().unwrap(); + let auth = auth_manager(home.path()).await; + let (sender, mut messages) = mpsc::channel(4); + let outgoing = OutgoingMessageSender::new(sender, AnalyticsEventsClient::disabled()); + // Leave the watcher stopped to exercise response validation before a coalesced notification. + assert!(outgoing.verification_auth.set(Arc::clone(&auth)).is_ok()); + outgoing + .enable_user_verification_connection(ConnectionId(1)) + .await; + let thread_id = ThreadId::new(); + let (id, response) = outgoing + .send_request_to_connections( + Some(&[ConnectionId(1)]), + request(thread_id), + Some(thread_id), + ) + .await; + messages.recv().await.unwrap(); + for (token, account) in [("token-2", "account-2"), ("token-3", "account-1")] { + write_auth(home.path(), token, account); + reload_auth(&auth).await; + } + let proof = json!({"action": "accept", "content": {"credentialId": "AQID", "signature": "BAUG"}, "_meta": null}); + outgoing + .notify_client_response(ConnectionId(1), id, proof) + .await; + assert!(response.await.is_err()); +} + +#[tokio::test] +async fn account_switch_during_eligibility_lock_wait_does_not_reassign_verification() { + let home = tempfile::tempdir().unwrap(); + let auth = auth_manager(home.path()).await; + let (sender, mut messages) = mpsc::channel(4); + let outgoing = OutgoingMessageSender::new(sender, AnalyticsEventsClient::disabled()); + assert!(outgoing.verification_auth.set(Arc::clone(&auth)).is_ok()); + outgoing + .enable_user_verification_connection(ConnectionId(1)) + .await; + let thread_id = ThreadId::new(); + let connection_ids = [ConnectionId(1)]; + + let mut registration = std::pin::pin!(outgoing.send_request_to_connections( + Some(&connection_ids), + request(thread_id), + Some(thread_id), + )); + { + let eligible = outgoing.verification_connections.lock().await; + let mut context = Context::from_waker(Waker::noop()); + assert!(registration.as_mut().poll(&mut context).is_pending()); + write_auth(home.path(), "token-2", "account-2"); + drop(eligible); + } + reload_auth(&auth).await; + + let (id, response) = registration.await; + assert!(response.await.is_err()); + assert!(messages.try_recv().is_err()); + assert!( + !outgoing + .request_id_to_callback + .lock() + .await + .contains_key(&id) + ); +} diff --git a/codex-rs/app-server/src/user_verification_response.rs b/codex-rs/app-server/src/user_verification_response.rs new file mode 100644 index 0000000000..6d57afcd81 --- /dev/null +++ b/codex-rs/app-server/src/user_verification_response.rs @@ -0,0 +1,45 @@ +//! Device proofs travel only in elicitation content, never in diagnostic metadata. + +use codex_app_server_protocol::McpServerElicitationAction; +use codex_app_server_protocol::McpServerElicitationRequestResponse; +use codex_app_server_protocol::UserVerificationProof; +use serde::Deserialize; +use tokio::sync::oneshot; + +use crate::outgoing_message::ClientRequestResult; + +pub(crate) fn from_client_result( + result: Result, +) -> McpServerElicitationRequestResponse { + let response = result.ok().and_then(Result::ok).and_then(|value| { + serde_json::from_value::(value).ok() + }); + if let Some(mut response) = response { + response.meta = None; + match response.action { + McpServerElicitationAction::Accept => { + if response + .content + .as_ref() + .is_some_and(|content| UserVerificationProof::deserialize(content).is_ok()) + { + // The MCP boundary validates the encoded proof and size limits. + return response; + } + } + McpServerElicitationAction::Decline | McpServerElicitationAction::Cancel => { + response.content = None; + return response; + } + } + } + McpServerElicitationRequestResponse { + action: McpServerElicitationAction::Cancel, + content: None, + meta: None, + } +} + +#[cfg(test)] +#[path = "user_verification_response_tests.rs"] +mod tests; diff --git a/codex-rs/app-server/src/user_verification_response_tests.rs b/codex-rs/app-server/src/user_verification_response_tests.rs new file mode 100644 index 0000000000..57ee37626b --- /dev/null +++ b/codex-rs/app-server/src/user_verification_response_tests.rs @@ -0,0 +1,36 @@ +use super::*; +use pretty_assertions::assert_eq; +use serde_json::json; + +#[test] +fn accepted_device_proof_uses_existing_content_and_discards_metadata() { + assert_eq!( + from_client_result(Ok(Ok(json!({ + "action": "accept", "content": {"credentialId": "AQID", "signature": "BAUG"}, + "_meta": {"ignored": "untrusted"}, + })))), + McpServerElicitationRequestResponse { + action: McpServerElicitationAction::Accept, + content: Some(json!({"credentialId": "AQID", "signature": "BAUG"})), + meta: None, + } + ); +} + +#[test] +fn invalid_response_or_accept_without_proof_cancels() { + for response in [ + json!({"invalid": "response"}), + json!({"action": "accept", "content": null, "_meta": null}), + json!({"action": "accept", "content": {}, "_meta": null}), + ] { + assert_eq!( + from_client_result(Ok(Ok(response))), + McpServerElicitationRequestResponse { + action: McpServerElicitationAction::Cancel, + content: None, + meta: None, + } + ); + } +} diff --git a/codex-rs/codex-mcp/src/connection_manager_tests.rs b/codex-rs/codex-mcp/src/connection_manager_tests.rs index bcbfb1dd4a..45deec37ea 100644 --- a/codex-rs/codex-mcp/src/connection_manager_tests.rs +++ b/codex-rs/codex-mcp/src/connection_manager_tests.rs @@ -905,7 +905,11 @@ async fn disabled_permissions_auto_accept_elicitation_with_empty_form_schema() { ElicitationRequestRouter::default(), ); let (tx_event, _rx_event) = async_channel::bounded(1); - let sender = manager.make_sender("server".to_string(), Some(tx_event)); + let sender = manager.make_sender( + "server".to_string(), + Some(tx_event), + &ClientMcpExtensions::default(), + ); let response = sender( NumberOrString::Number(1), @@ -939,7 +943,11 @@ async fn disabled_permissions_do_not_auto_accept_elicitation_with_requested_fiel ElicitationRequestRouter::default(), ); let (tx_event, _rx_event) = async_channel::bounded(1); - let sender = manager.make_sender("server".to_string(), Some(tx_event)); + let sender = manager.make_sender( + "server".to_string(), + Some(tx_event), + &ClientMcpExtensions::default(), + ); let response = sender( NumberOrString::Number(1), @@ -1030,7 +1038,11 @@ async fn assert_elicitation_declined_with_reviewer_calls( full_access_form_input_enabled_router(), ); let (tx_event, rx_event) = async_channel::bounded(1); - let sender = manager.make_sender(server_name.to_string(), Some(tx_event)); + let sender = manager.make_sender( + server_name.to_string(), + Some(tx_event), + &ClientMcpExtensions::default(), + ); let response = tokio::select! { biased; @@ -1070,7 +1082,11 @@ async fn assert_requested_user_input_is_declined( router, ); let (tx_event, rx_event) = async_channel::bounded(1); - let sender = manager.make_sender("server".to_string(), Some(tx_event)); + let sender = manager.make_sender( + "server".to_string(), + Some(tx_event), + &ClientMcpExtensions::default(), + ); let response = tokio::select! { biased; @@ -1157,7 +1173,11 @@ async fn assert_disabled_permissions_surface_requested_user_input( router.clone(), ); let (tx_event, rx_event) = async_channel::bounded(1); - let sender = manager.make_sender("server".to_string(), Some(tx_event)); + let sender = manager.make_sender( + "server".to_string(), + Some(tx_event), + &ClientMcpExtensions::default(), + ); let requested_schema = requested_user_input_schema(); let mut pending = tokio::spawn(sender( NumberOrString::Number(1), @@ -1302,7 +1322,11 @@ async fn disabled_permissions_decline_user_input_without_an_event_channel() { /*lifecycle*/ None, full_access_form_input_enabled_router(), ); - let sender = manager.make_sender("server".to_string(), /*tx_event*/ None); + let sender = manager.make_sender( + "server".to_string(), + /*tx_event*/ None, + &ClientMcpExtensions::default(), + ); let response = sender( NumberOrString::Number(1), @@ -1360,7 +1384,11 @@ async fn concurrent_authority_updates_never_auto_approve_mixed_policy() { )); } }); - let sender = manager.make_sender("server".to_string(), /*tx_event*/ None); + let sender = manager.make_sender( + "server".to_string(), + /*tx_event*/ None, + &ClientMcpExtensions::default(), + ); let elicitation = codex_rmcp_client::Elicitation::Mcp(ElicitRequestParams::FormElicitationParams { meta: None, @@ -1427,8 +1455,16 @@ async fn shared_elicitation_router_targets_the_exact_pending_request() { router.clone(), ); let (tx_event, rx_event) = async_channel::bounded(2); - let sender_a = manager_a.make_sender("server".to_string(), Some(tx_event.clone())); - let sender_b = manager_b.make_sender("server".to_string(), Some(tx_event)); + let sender_a = manager_a.make_sender( + "server".to_string(), + Some(tx_event.clone()), + &ClientMcpExtensions::default(), + ); + let sender_b = manager_b.make_sender( + "server".to_string(), + Some(tx_event), + &ClientMcpExtensions::default(), + ); let elicitation = codex_rmcp_client::Elicitation::Mcp(ElicitRequestParams::FormElicitationParams { meta: None, @@ -1523,7 +1559,11 @@ async fn cancelled_elicitation_is_removed_without_affecting_other_pending_reques router.clone(), ); let (tx_event, rx_event) = async_channel::bounded(2); - let sender = manager.make_sender("server".to_string(), Some(tx_event)); + let sender = manager.make_sender( + "server".to_string(), + Some(tx_event), + &ClientMcpExtensions::default(), + ); let elicitation = codex_rmcp_client::Elicitation::Mcp(ElicitRequestParams::FormElicitationParams { meta: None, diff --git a/codex-rs/codex-mcp/src/elicitation.rs b/codex-rs/codex-mcp/src/elicitation.rs index 7916d6c967..ec3d3f0d0f 100644 --- a/codex-rs/codex-mcp/src/elicitation.rs +++ b/codex-rs/codex-mcp/src/elicitation.rs @@ -21,6 +21,8 @@ use anyhow::anyhow; use async_channel::Sender; use codex_protocol::approvals::ElicitationRequest; use codex_protocol::approvals::ElicitationRequestEvent; +use codex_protocol::mcp::ClientMcpExtensions; +use codex_protocol::mcp::OPENAI_ELICITATION_EXTENSION_ID; use codex_protocol::mcp::RequestId as ProtocolRequestId; use codex_protocol::mcp_approval_meta::APPROVAL_KIND_KEY; use codex_protocol::mcp_approval_meta::APPROVAL_KIND_TOOL_SUGGESTION; @@ -43,6 +45,9 @@ static NEXT_ELICITATION_REQUEST_ID: AtomicU64 = AtomicU64::new(0); const STRICT_AUTO_REVIEW_DECLINE_MESSAGE: &str = "Automated review of this operation failed. Do not proceed without asking the user for explicit approval."; +#[path = "user_verification_elicitation.rs"] +mod user_verification_elicitation; + #[derive(Debug, Clone)] pub struct ElicitationReviewRequest { pub server_name: String, @@ -147,7 +152,7 @@ impl ElicitationRequestRouter { .ok_or_else(|| anyhow!("elicitation request not found"))?; responder .send(response) - .map_err(|e| anyhow!("failed to send elicitation response: {e:?}")) + .map_err(|_| anyhow!("elicitation response receiver closed")) } } @@ -202,7 +207,14 @@ impl ElicitationRequestManager { &self, server_name: String, tx_event: Option>, + client_mcp_extensions: &ClientMcpExtensions, ) -> SendElicitation { + // Event receivers such as codex mcp-server do not necessarily handle verification. + // Only wait for a response when trusted host activation enabled this exact route. + let user_verification_enabled = client_mcp_extensions + .get(OPENAI_ELICITATION_EXTENSION_ID) + .and_then(|settings| settings.get("userVerification")) + .is_some_and(Value::is_object); let router = self.router.clone(); let authority = self.authority.clone(); Box::new(move |id, elicitation| { @@ -211,13 +223,31 @@ impl ElicitationRequestManager { let server_name = server_name.clone(); let authority = authority.clone(); async move { - // Activate only once the typed app-server and UI path is available. - if matches!(&elicitation, Elicitation::UserVerification { .. }) { - return Ok(ElicitationResponse { - action: ElicitationAction::Cancel, - content: None, - meta: None, - }); + if let Elicitation::UserVerification { + title, + description, + challenge, + } = elicitation + { + if !user_verification_enabled { + return Ok(ElicitationResponse { + action: ElicitationAction::Cancel, + content: None, + meta: None, + }); + } + return user_verification_elicitation::route( + router, + tx_event, + authority, + server_name, + ElicitationRequest::UserVerification { + title, + description, + challenge, + }, + ) + .await; } if router.auto_deny() { return Ok(ElicitationResponse { diff --git a/codex-rs/codex-mcp/src/elicitation_tests.rs b/codex-rs/codex-mcp/src/elicitation_tests.rs index 9bd780ccaf..a1a67d30b4 100644 --- a/codex-rs/codex-mcp/src/elicitation_tests.rs +++ b/codex-rs/codex-mcp/src/elicitation_tests.rs @@ -92,7 +92,11 @@ fn elicitation_fixture( ElicitationRequestRouter::default(), ); let (tx_event, events) = async_channel::bounded(1); - let sender = manager.make_sender("independent-mcp".to_string(), Some(tx_event)); + let sender = manager.make_sender( + "independent-mcp".to_string(), + Some(tx_event), + &ClientMcpExtensions::default(), + ); (manager, events, sender) } @@ -210,7 +214,11 @@ async fn strict_auto_review_respects_explicit_elicitation_denials() { ("independent-mcp", Some(json!(false))), ("another-independent-mcp", None), ] { - let sender = manager.make_sender(server_name.into(), /*tx_event*/ None); + let sender = manager.make_sender( + server_name.into(), + /*tx_event*/ None, + &ClientMcpExtensions::default(), + ); assert_eq!( send_elicitation(&sender, marker).await, ElicitationResponse { @@ -334,10 +342,15 @@ async fn reused_elicitation_senders_follow_each_servers_latest_permission_author /*lifecycle*/ None, ElicitationRequestRouter::default(), ); - let attached = manager.make_sender("attached".to_string(), /*tx_event*/ None); + let attached = manager.make_sender( + "attached".to_string(), + /*tx_event*/ None, + &ClientMcpExtensions::default(), + ); let hosted = manager.make_sender( crate::CODEX_APPS_MCP_SERVER_NAME.to_string(), /*tx_event*/ None, + &ClientMcpExtensions::default(), ); assert_eq!( @@ -398,3 +411,179 @@ async fn reused_elicitation_senders_follow_each_servers_latest_permission_author ElicitationAction::Decline ); } + +fn verification_fixture( + approval_policy: AskForApproval, + reviewer: Option>, +) -> (ElicitationRequestManager, Receiver, SendElicitation) { + let mut config = test_elicitation_config( + crate::CODEX_APPS_MCP_SERVER_NAME, + approval_policy, + PermissionProfile::Disabled, + ); + let mut catalog = crate::catalog::ResolvedMcpCatalog::builder(); + catalog.register(crate::catalog::McpServerRegistration::from_hosted_apps( + "verification-test", + /*contribution_order*/ 0, + crate::mcp::codex_apps_mcp_server_config( + "https://example.com", + /*apps_mcp_product_sku*/ None, + /*originator*/ None, + ), + )); + Arc::make_mut(&mut config).mcp_server_catalog = catalog.build(); + let manager = ElicitationRequestManager::new( + config, + reviewer.map(|reviewer| reviewer as Arc), + /*lifecycle*/ None, + ElicitationRequestRouter::default(), + ); + let (tx, events) = async_channel::bounded(1); + let sender = manager.make_sender( + crate::CODEX_APPS_MCP_SERVER_NAME.into(), + Some(tx), + &ClientMcpExtensions::new([( + OPENAI_ELICITATION_EXTENSION_ID.to_string(), + json!({"userVerification": {}}), + )]), + ); + (manager, events, sender) +} + +#[tokio::test] +async fn user_verification_requires_the_app_even_when_policy_would_approve_or_decline() { + for approval_policy in [AskForApproval::Never, AskForApproval::OnRequest] { + let reviewer = RecordingReviewer::new(Ok(Some(approved_response()))); + let (manager, events, sender) = + verification_fixture(approval_policy, Some(reviewer.clone())); + let pending = tokio::spawn(sender( + RequestId::Number(7), + Elicitation::UserVerification { + title: "Approve purchase".into(), + description: "Pay $200".into(), + challenge: "AQID".into(), + }, + )); + let event = events.recv().await.unwrap(); + let EventMsg::ElicitationRequest(request) = event.msg else { + panic!("expected typed elicitation"); + }; + assert_eq!( + request.request, + ElicitationRequest::UserVerification { + title: "Approve purchase".into(), + description: "Pay $200".into(), + challenge: "AQID".into(), + } + ); + assert_eq!(reviewer.calls.load(Relaxed), 0); + let ProtocolRequestId::String(id) = request.id else { + panic!("expected routed request id"); + }; + let proof = ElicitationResponse { + action: ElicitationAction::Accept, + content: Some(json!({"credentialId": "AQID", "signature": "BAUG"})), + meta: None, + }; + manager + .router + .resolve( + request.server_name.clone(), + RequestId::String(id.clone().into()), + proof.clone(), + ) + .await + .unwrap(); + assert_eq!(pending.await.unwrap().unwrap(), proof); + assert!( + manager + .router + .resolve(request.server_name, RequestId::String(id.into()), proof) + .await + .is_err() + ); + } +} + +#[tokio::test] +async fn user_verification_cancels_when_no_app_can_receive_the_request() { + let (manager, _, _) = verification_fixture(AskForApproval::OnRequest, /*reviewer*/ None); + let sender = manager.make_sender( + crate::CODEX_APPS_MCP_SERVER_NAME.into(), + /*tx_event*/ None, + &ClientMcpExtensions::new([( + OPENAI_ELICITATION_EXTENSION_ID.to_string(), + json!({"userVerification": {}}), + )]), + ); + assert_eq!( + sender( + RequestId::Number(7), + Elicitation::UserVerification { + title: "Approve".into(), + description: String::new(), + challenge: "AQID".into(), + } + ) + .await + .unwrap(), + ElicitationResponse { + action: ElicitationAction::Cancel, + content: None, + meta: None + }, + ); +} + +#[tokio::test] +async fn user_verification_cancels_for_an_event_receiver_without_host_activation() { + let (manager, _, _) = verification_fixture(AskForApproval::OnRequest, /*reviewer*/ None); + let (tx, events) = async_channel::bounded(1); + let sender = manager.make_sender( + crate::CODEX_APPS_MCP_SERVER_NAME.into(), + Some(tx), + &ClientMcpExtensions::default(), + ); + let response = tokio::time::timeout( + std::time::Duration::from_secs(1), + sender( + RequestId::Number(7), + Elicitation::UserVerification { + title: "Approve".into(), + description: String::new(), + challenge: "AQID".into(), + }, + ), + ) + .await + .expect("an inactive host must not wait for a response") + .unwrap(); + assert_eq!( + response, + ElicitationResponse { + action: ElicitationAction::Cancel, + content: None, + meta: None, + }, + ); + assert!(events.try_recv().is_err()); + assert!(manager.router.requests.lock().unwrap().is_empty()); +} + +#[tokio::test] +async fn user_verification_drops_pending_response_when_the_request_is_cancelled() { + let (manager, events, sender) = + verification_fixture(AskForApproval::OnRequest, /*reviewer*/ None); + let pending = tokio::spawn(sender( + RequestId::Number(7), + Elicitation::UserVerification { + title: "Approve".into(), + description: String::new(), + challenge: "AQID".into(), + }, + )); + events.recv().await.unwrap(); + pending.abort(); + assert!(pending.await.unwrap_err().is_cancelled()); + assert!(manager.router.requests.lock().unwrap().is_empty()); +} diff --git a/codex-rs/codex-mcp/src/rmcp_client.rs b/codex-rs/codex-mcp/src/rmcp_client.rs index 8f12ad8de9..0034d36179 100644 --- a/codex-rs/codex-mcp/src/rmcp_client.rs +++ b/codex-rs/codex-mcp/src/rmcp_client.rs @@ -897,9 +897,10 @@ async fn start_server_task( client_mcp_extensions, catalog_item_limit, } = params; + let send_elicitation = + elicitation_requests.make_sender(server_name.clone(), tx_event, &client_mcp_extensions); let params = mcp_initialize_request_params(client_elicitation_capability, client_mcp_extensions); - let send_elicitation = elicitation_requests.make_sender(server_name.clone(), tx_event); let started_at = Instant::now(); let initialize_result = client diff --git a/codex-rs/codex-mcp/src/user_verification_elicitation.rs b/codex-rs/codex-mcp/src/user_verification_elicitation.rs new file mode 100644 index 0000000000..29226a6f23 --- /dev/null +++ b/codex-rs/codex-mcp/src/user_verification_elicitation.rs @@ -0,0 +1,54 @@ +//! Routes device verification directly to the app, outside automated approval policy. + +use super::*; + +pub(super) async fn route( + router: ElicitationRequestRouter, + events: Option>, + authority: Arc>>, + server_name: String, + request: ElicitationRequest, +) -> Result { + let authority = authority + .lock() + .ok() + .and_then(|authority| authority.clone()); + let Some(events) = events.filter(|_| !router.auto_deny()) else { + return Ok(ElicitationResponse { + action: ElicitationAction::Cancel, + content: None, + meta: None, + }); + }; + let id = format!( + "codex-mcp-elicitation-{}", + NEXT_ELICITATION_REQUEST_ID.fetch_add(1, Ordering::Relaxed) + ); + let key = (server_name.clone(), RequestId::String(id.clone().into())); + let (response, receiver) = oneshot::channel(); + router + .requests + .lock() + .map_err(|_| anyhow!("elicitation request router unavailable"))? + .insert(key.clone(), response); + let _pending = PendingElicitationRequest { router, key }; + let _active = authority + .as_ref() + .and_then(|authority| authority.lifecycle.as_ref()) + .map(ElicitationLifecycle::start); + events + .send(Event { + id: "mcp_elicitation_request".to_string(), + msg: EventMsg::ElicitationRequest(ElicitationRequestEvent { + turn_id: None, + server_name, + id: ProtocolRequestId::String(id), + request, + }), + }) + .await + .context("failed to deliver user-verification request")?; + receiver + .await + .context("user-verification response channel closed") +} diff --git a/codex-rs/core/src/context/mod.rs b/codex-rs/core/src/context/mod.rs index dac2accfe8..d1ac427700 100644 --- a/codex-rs/core/src/context/mod.rs +++ b/codex-rs/core/src/context/mod.rs @@ -45,6 +45,7 @@ mod unsupported_media; mod update_plan_instructions; mod user_instructions; mod user_shell_command; +mod user_verification_notice; pub(crate) mod world_state; pub(crate) use approved_command_prefix_saved::APPROVED_COMMAND_PREFIX_SAVED_MESSAGE_PREFIX; @@ -114,4 +115,5 @@ pub(crate) use unsupported_media::UnsupportedMedia; pub use update_plan_instructions::without_update_plan_instructions; pub(crate) use user_instructions::UserInstructions; pub(crate) use user_shell_command::UserShellCommand; +pub(crate) use user_verification_notice::UserVerificationNotice; pub(crate) use world_state::ManagedDeveloperInstructions; diff --git a/codex-rs/core/src/context/user_verification_notice.rs b/codex-rs/core/src/context/user_verification_notice.rs new file mode 100644 index 0000000000..ea9f381c19 --- /dev/null +++ b/codex-rs/core/src/context/user_verification_notice.rs @@ -0,0 +1,28 @@ +//! A bounded realtime notice that never includes verification challenge or display text. + +use super::ContextualUserFragment; +use codex_protocol::models::ContentItemKind; + +pub(crate) struct UserVerificationNotice; + +impl ContextualUserFragment for UserVerificationNotice { + fn role(&self) -> &'static str { + "developer" + } + + fn content_kind(&self) -> ContentItemKind { + ContentItemKind("user_verification.notice".to_string()) + } + + fn markers(&self) -> (&'static str, &'static str) { + Self::type_markers() + } + + fn type_markers() -> (&'static str, &'static str) { + ("", "") + } + + fn body(&self) -> String { + "User verification is required. Please respond in the app.".to_string() + } +} diff --git a/codex-rs/core/src/session/handlers.rs b/codex-rs/core/src/session/handlers.rs index e4594f78b7..aa7c99700c 100644 --- a/codex-rs/core/src/session/handlers.rs +++ b/codex-rs/core/src/session/handlers.rs @@ -534,7 +534,11 @@ pub(super) async fn submission_loop( // To break out of this loop, send Op::Shutdown. let mut shutdown_received = false; while let Ok(sub) = rx_sub.recv().await { - debug!(?sub, "Submission"); + if matches!(sub.op, Op::ResolveElicitation { .. }) { + debug!(submission_id = %sub.id, operation = sub.op.kind(), "Submission"); + } else { + debug!(?sub, "Submission"); + } let dispatch_span = submission_dispatch_span(&sub); let should_exit = async { match sub.op { diff --git a/codex-rs/core/src/session/turn.rs b/codex-rs/core/src/session/turn.rs index 26ff799a44..4719e1d891 100644 --- a/codex-rs/core/src/session/turn.rs +++ b/codex-rs/core/src/session/turn.rs @@ -13,6 +13,7 @@ use crate::compact_remote::run_inline_remote_auto_compact_task; use crate::compact_remote_v2::run_inline_remote_auto_compact_task as run_inline_remote_auto_compact_task_v2; use crate::connectors; use crate::context::ContextualUserFragment; +use crate::context::UserVerificationNotice; use crate::environment_selection::TurnEnvironmentSnapshot; use crate::feedback_tags; use crate::hook_runtime::drain_async_hook_results; @@ -1833,6 +1834,14 @@ pub(super) fn agent_message_text(item: &codex_protocol::items::AgentMessageItem) pub(super) fn realtime_text_for_event(msg: &EventMsg) -> Option<(String, Option)> { match msg { + EventMsg::ElicitationRequest(request) + if matches!( + &request.request, + codex_protocol::approvals::ElicitationRequest::UserVerification { .. } + ) => + { + Some((UserVerificationNotice.render(), None)) + } EventMsg::AgentMessage(event) => Some((event.message.clone(), event.phase.clone())), EventMsg::ItemCompleted(event) => match &event.item { TurnItem::AgentMessage(item) => Some((agent_message_text(item), item.phase.clone())), diff --git a/codex-rs/core/src/session/turn_tests.rs b/codex-rs/core/src/session/turn_tests.rs index d628f601f8..f1829fe561 100644 --- a/codex-rs/core/src/session/turn_tests.rs +++ b/codex-rs/core/src/session/turn_tests.rs @@ -86,3 +86,24 @@ async fn plan_mode_uses_contributed_turn_item_for_last_agent_message() { Some("plan contributed assistant text") ); } + +#[test] +fn realtime_user_verification_notice_excludes_request_payload() { + let event = EventMsg::ElicitationRequest(codex_protocol::approvals::ElicitationRequestEvent { + turn_id: None, + server_name: "private-server-name".to_string(), + id: codex_protocol::mcp::RequestId::String("private-request-id".to_string()), + request: codex_protocol::approvals::ElicitationRequest::UserVerification { + title: "private-title".to_string(), + description: "private-description".to_string(), + challenge: "private-challenge".to_string(), + }, + }); + assert_eq!( + realtime_text_for_event(&event), + Some(( + "User verification is required. Please respond in the app.".to_string(), + None, + )), + ); +} diff --git a/codex-rs/core/tests/suite/mcp_user_verification.rs b/codex-rs/core/tests/suite/mcp_user_verification.rs index 47354a2339..d53b264b77 100644 --- a/codex-rs/core/tests/suite/mcp_user_verification.rs +++ b/codex-rs/core/tests/suite/mcp_user_verification.rs @@ -1,17 +1,19 @@ -//! Before activation, verification never prompts or prevents the enclosing tool/turn completing. +//! Typed verification holds the enclosing tool until the client answers the request. use anyhow::Result; use codex_core::StartThreadOptions; use codex_core::TurnInputRequest; +use codex_protocol::approvals::ElicitationRequest; use codex_protocol::mcp::ClientMcpExtensions; use codex_protocol::mcp::OPENAI_ELICITATION_EXTENSION_ID; +use codex_protocol::protocol::ElicitationAction; use codex_protocol::protocol::EventMsg; +use codex_protocol::protocol::Op; use codex_protocol::user_input::UserInput; use core_test_support::responses; use core_test_support::skip_if_no_network; use core_test_support::skip_if_wine_exec; use core_test_support::test_codex::test_codex; -use core_test_support::wait_for_event; use core_test_support::wait_for_mcp_server; use pretty_assertions::assert_eq; use serde_json::Value; @@ -66,9 +68,9 @@ enum CapabilitySource { } #[test_case(CapabilitySource::HostProjection; "host_projection_does_not_advertise_verification")] -#[test_case(CapabilitySource::ExplicitSession; "explicit_session_cancels_without_ui")] +#[test_case(CapabilitySource::ExplicitSession; "explicit_session_routes_typed_verification")] #[tokio::test(flavor = "multi_thread", worker_threads = 2)] -async fn mcp_user_verification_before_activation(source: CapabilitySource) -> Result<()> { +async fn mcp_user_verification_transport(source: CapabilitySource) -> Result<()> { skip_if_no_network!(Ok(())); skip_if_wine_exec!(Ok(()), "the MCP fixture requires a host Python interpreter"); let server = responses::start_mock_server().await; @@ -82,8 +84,7 @@ async fn mcp_user_verification_before_activation(source: CapabilitySource) -> Re Some(&declarations), /*legacy_openai_form_elicitation*/ false, ), - // Exercise the manager's fail-closed route even if a host directly supplies - // this capability before the typed transport/UI activation stage lands. + // Exercise the typed route when the host directly supplies this capability. CapabilitySource::ExplicitSession => ClientMcpExtensions::new(declarations), }; let mut config = test.config.clone(); @@ -130,14 +131,47 @@ async fn mcp_user_verification_before_activation(source: CapabilitySource) -> Re text_elements: Vec::new(), }])) .await?; - wait_for_event(&thread, |event| { - assert!( - !matches!(event, EventMsg::ElicitationRequest(_)), - "verification must not prompt before activation" - ); - matches!(event, EventMsg::TurnComplete(_)) + let mut prompted = false; + tokio::time::timeout(std::time::Duration::from_secs(/*secs*/ 10), async { + loop { + match thread.next_event().await?.msg { + EventMsg::ElicitationRequest(request) => { + assert!(matches!(source, CapabilitySource::ExplicitSession)); + assert!(!prompted, "verification must only prompt once"); + assert_eq!( + request.request, + ElicitationRequest::UserVerification { + title: "Approve".into(), + description: "".into(), + challenge: "AQID".into(), + } + ); + assert!( + follow_up.requests().is_empty(), + "the tool must wait for the response" + ); + thread + .submit(Op::ResolveElicitation { + server_name: request.server_name, + request_id: request.id, + decision: ElicitationAction::Cancel, + content: None, + meta: None, + }) + .await?; + prompted = true; + } + EventMsg::TurnComplete(_) => break, + _ => {} + } + } + anyhow::Ok(()) }) - .await; + .await??; + assert_eq!( + prompted, + matches!(source, CapabilitySource::ExplicitSession) + ); let output = follow_up .single_request() .function_call_output("verify-call"); diff --git a/codex-rs/protocol/src/approvals.rs b/codex-rs/protocol/src/approvals.rs index e481ccb028..b05c45ce49 100644 --- a/codex-rs/protocol/src/approvals.rs +++ b/codex-rs/protocol/src/approvals.rs @@ -390,6 +390,13 @@ impl ExecApprovalRequestEvent { #[serde(tag = "mode", rename_all = "snake_case")] #[ts(tag = "mode")] pub enum ElicitationRequest { + #[serde(rename = "openai/userVerification")] + #[ts(rename = "openai/userVerification")] + UserVerification { + title: String, + description: String, + challenge: String, + }, Form { #[serde(rename = "_meta", default, skip_serializing_if = "Option::is_none")] #[ts(optional, rename = "_meta")] diff --git a/codex-rs/tui/src/app/agents_overview_details.rs b/codex-rs/tui/src/app/agents_overview_details.rs index 00cb7e76fc..a7529b88b2 100644 --- a/codex-rs/tui/src/app/agents_overview_details.rs +++ b/codex-rs/tui/src/app/agents_overview_details.rs @@ -242,6 +242,7 @@ fn request_preview(request: &ServerRequest) -> Option { | McpServerElicitationRequest::OpenAiForm { message, .. } | McpServerElicitationRequest::OpenAiElicitationForm { message, .. } | McpServerElicitationRequest::Url { message, .. } => Some(message.as_str()), + McpServerElicitationRequest::UserVerification { .. } => None, }, ServerRequest::ToolRequestUserInput { params, .. } => params .questions diff --git a/codex-rs/tui/src/app/thread_routing.rs b/codex-rs/tui/src/app/thread_routing.rs index 768322320f..d8174e755b 100644 --- a/codex-rs/tui/src/app/thread_routing.rs +++ b/codex-rs/tui/src/app/thread_routing.rs @@ -308,6 +308,14 @@ impl App { message: message.clone(), }), )), + codex_app_server_protocol::McpServerElicitationRequest::UserVerification { .. } => { + self.app_event_tx.resolve_elicitation( + thread_id, params.server_name.clone(), request_id.clone(), + codex_app_server_protocol::McpServerElicitationAction::Cancel, + /*content*/ None, /*meta*/ None, + ); + None + } codex_app_server_protocol::McpServerElicitationRequest::OpenAiForm { .. } @@ -1792,6 +1800,9 @@ impl App { }; match ¶ms.request { + codex_app_server_protocol::McpServerElicitationRequest::UserVerification { .. } => { + false + } codex_app_server_protocol::McpServerElicitationRequest::Form { .. } => true, codex_app_server_protocol::McpServerElicitationRequest::OpenAiForm { .. } | codex_app_server_protocol::McpServerElicitationRequest::OpenAiElicitationForm { diff --git a/codex-rs/tui/src/chatwidget/tool_requests.rs b/codex-rs/tui/src/chatwidget/tool_requests.rs index f745dca0f6..8f7a4216b2 100644 --- a/codex-rs/tui/src/chatwidget/tool_requests.rs +++ b/codex-rs/tui/src/chatwidget/tool_requests.rs @@ -373,6 +373,16 @@ impl ChatWidget { self.bottom_pane .push_approval_request(request, &self.config.features); } + McpServerElicitationRequest::UserVerification { .. } => { + self.app_event_tx.resolve_elicitation( + thread_id, + params.server_name, + request_id, + codex_app_server_protocol::McpServerElicitationAction::Cancel, + /*content*/ None, + /*meta*/ None, + ); + } McpServerElicitationRequest::OpenAiForm { .. } | McpServerElicitationRequest::OpenAiElicitationForm { .. } | McpServerElicitationRequest::Url { .. } => {