protocol: make user-turn sandbox policy optional

This commit is contained in:
Michael Bolin
2026-04-30 07:41:11 -07:00
parent 2e8a66d44c
commit 0259075ce6
9 changed files with 44 additions and 56 deletions
+9 -12
View File
@@ -34,12 +34,10 @@ use codex_protocol::protocol::AskForApproval;
use codex_protocol::protocol::EventMsg;
use codex_protocol::protocol::Op;
use codex_protocol::protocol::RealtimeConversationVersion as RealtimeWsVersion;
use codex_protocol::protocol::SandboxPolicy;
use codex_protocol::protocol::SessionConfiguredEvent;
use codex_protocol::protocol::SessionSource;
use codex_protocol::protocol::TurnEnvironmentSelection;
use codex_protocol::user_input::UserInput;
use codex_sandboxing::compatibility_sandbox_policy_for_permission_profile;
use codex_utils_absolute_path::AbsolutePathBuf;
use futures::future::BoxFuture;
use serde_json::Value;
@@ -206,18 +204,17 @@ pub enum ShellModelOutput {
/// Returns the permission fields required by `Op::UserTurn` for tests that
/// construct the op directly.
///
/// The legacy sandbox field is intentionally omitted when a canonical
/// `PermissionProfile` is available.
pub fn turn_permission_fields(
permission_profile: PermissionProfile,
cwd: &Path,
) -> (SandboxPolicy, Option<PermissionProfile>) {
let file_system_sandbox_policy = permission_profile.file_system_sandbox_policy();
let sandbox_policy = compatibility_sandbox_policy_for_permission_profile(
&permission_profile,
&file_system_sandbox_policy,
permission_profile.network_sandbox_policy(),
cwd,
);
(sandbox_policy, Some(permission_profile))
_cwd: &Path,
) -> (
Option<codex_protocol::protocol::SandboxPolicy>,
Option<PermissionProfile>,
) {
(None, Some(permission_profile))
}
pub struct TestCodexBuilder {