mirror of
https://github.com/openai/codex.git
synced 2026-11-04 00:24:43 +00:00
Extract TUI approval request payloads into structs (#33684)
## What changed Give command, permissions, patch, and MCP elicitation approvals dedicated request structs, and update TUI routing and rendering to use the wrapped payloads. GitOrigin-RevId: ffee4058dd27505be2a11de3758ac12bb707b6b8
This commit is contained in:
1 parent
693b8c2ba4
commit
d3fc1950a9
8 files changed
+231
-267
No files matched your search
@@ -287,7 +287,7 @@ impl ChatWidget {
|
||||
self.notify(Notification::ExecApprovalRequested { command });
|
||||
|
||||
let available_decisions = ev.effective_available_decisions();
|
||||
let request = ApprovalRequest::Exec {
|
||||
let request = ApprovalRequest::Exec(ExecApprovalRequest {
|
||||
thread_id: self.thread_id.unwrap_or_default(),
|
||||
thread_label: None,
|
||||
id: ev.effective_approval_id(),
|
||||
@@ -297,7 +297,7 @@ impl ChatWidget {
|
||||
available_decisions,
|
||||
network_approval_context: ev.network_approval_context,
|
||||
additional_permissions: ev.additional_permissions,
|
||||
};
|
||||
});
|
||||
self.bottom_pane
|
||||
.push_approval_request(request, &self.config.features);
|
||||
self.set_ambient_pet_notification(
|
||||
@@ -310,14 +310,14 @@ impl ChatWidget {
|
||||
pub(crate) fn handle_apply_patch_approval_now(&mut self, ev: ApplyPatchApprovalRequestEvent) {
|
||||
self.flush_answer_stream_with_separator();
|
||||
|
||||
let request = ApprovalRequest::ApplyPatch {
|
||||
let request = ApprovalRequest::ApplyPatch(ApplyPatchApprovalRequest {
|
||||
thread_id: self.thread_id.unwrap_or_default(),
|
||||
thread_label: None,
|
||||
id: ev.call_id,
|
||||
reason: ev.reason,
|
||||
changes: ev.changes.clone(),
|
||||
cwd: self.config.cwd.clone(),
|
||||
};
|
||||
});
|
||||
self.bottom_pane
|
||||
.push_approval_request(request, &self.config.features);
|
||||
self.set_ambient_pet_notification(
|
||||
@@ -361,13 +361,13 @@ impl ChatWidget {
|
||||
} else {
|
||||
match params.request {
|
||||
McpServerElicitationRequest::Form { message, .. } => {
|
||||
let request = ApprovalRequest::McpElicitation {
|
||||
let request = ApprovalRequest::McpElicitation(McpElicitationApprovalRequest {
|
||||
thread_id,
|
||||
thread_label: None,
|
||||
server_name: params.server_name,
|
||||
request_id,
|
||||
message,
|
||||
};
|
||||
});
|
||||
self.bottom_pane
|
||||
.push_approval_request(request, &self.config.features);
|
||||
}
|
||||
@@ -434,14 +434,14 @@ impl ChatWidget {
|
||||
|
||||
pub(crate) fn handle_request_permissions_now(&mut self, ev: RequestPermissionsEvent) {
|
||||
self.flush_answer_stream_with_separator();
|
||||
let request = ApprovalRequest::Permissions {
|
||||
let request = ApprovalRequest::Permissions(PermissionsApprovalRequest {
|
||||
thread_id: self.thread_id.unwrap_or_default(),
|
||||
thread_label: None,
|
||||
call_id: ev.call_id,
|
||||
environment_id: ev.environment_id,
|
||||
reason: ev.reason,
|
||||
permissions: ev.permissions,
|
||||
};
|
||||
});
|
||||
self.bottom_pane
|
||||
.push_approval_request(request, &self.config.features);
|
||||
self.set_ambient_pet_notification(
|
||||
|
||||
Reference in new issue
Block a user