inlining base_approval_requirequirements

This commit is contained in:
kevin zhao
2025-11-13 21:30:53 -05:00
parent 40b8a6e311
commit 9a15ae1286
2 changed files with 15 additions and 37 deletions

View File

@@ -71,24 +71,6 @@ impl ShellRuntime {
tx_event: ctx.session.get_tx_event(),
})
}
fn base_approval_requirement(
&self,
req: &ShellRequest,
policy: AskForApproval,
sandbox_policy: &SandboxPolicy,
) -> ApprovalRequirement {
if requires_initial_appoval(
policy,
sandbox_policy,
&req.command,
req.with_escalated_permissions.unwrap_or(false),
) {
ApprovalRequirement::NeedsApproval { reason: None }
} else {
ApprovalRequirement::Skip
}
}
}
impl Sandboxable for ShellRuntime {
@@ -146,10 +128,17 @@ impl Approvable<ShellRequest> for ShellRuntime {
if let Some(exec_policy) = &req.exec_policy
&& let Some(requirement) = evaluate_with_policy(exec_policy, &req.command, policy)
{
return requirement;
requirement
} else if requires_initial_appoval(
policy,
sandbox_policy,
&req.command,
req.with_escalated_permissions.unwrap_or(false),
) {
ApprovalRequirement::NeedsApproval { reason: None }
} else {
ApprovalRequirement::Skip
}
self.base_approval_requirement(req, policy, sandbox_policy)
}
fn wants_escalated_first_attempt(&self, req: &ShellRequest) -> bool {

View File

@@ -87,19 +87,6 @@ impl<'a> UnifiedExecRuntime<'a> {
pub fn new(manager: &'a UnifiedExecSessionManager) -> Self {
Self { manager }
}
fn base_approval_requirement(
&self,
req: &UnifiedExecRequest,
policy: AskForApproval,
sandbox_policy: &SandboxPolicy,
) -> ApprovalRequirement {
if requires_initial_appoval(policy, sandbox_policy, &req.command, false) {
ApprovalRequirement::NeedsApproval { reason: None }
} else {
ApprovalRequirement::Skip
}
}
}
impl Sandboxable for UnifiedExecRuntime<'_> {
@@ -158,10 +145,12 @@ impl Approvable<UnifiedExecRequest> for UnifiedExecRuntime<'_> {
if let Some(exec_policy) = &req.exec_policy
&& let Some(requirement) = evaluate_with_policy(exec_policy, &req.command, policy)
{
return requirement;
requirement
} else if requires_initial_appoval(policy, sandbox_policy, &req.command, false) {
ApprovalRequirement::NeedsApproval { reason: None }
} else {
ApprovalRequirement::Skip
}
self.base_approval_requirement(req, policy, sandbox_policy)
}
fn wants_escalated_first_attempt(&self, req: &UnifiedExecRequest) -> bool {