Surface remote startup exec approvals

Add exec-server startup approval plumbing, wire it into unified exec, and cover the live remote path with focused smoke coverage.

Co-authored-by: Codex <noreply@openai.com>
This commit is contained in:
starr-openai
2026-04-06 13:02:09 -07:00
parent 1525bbdb9a
commit 38ea15e634
19 changed files with 980 additions and 78 deletions

View File

@@ -54,6 +54,7 @@ async fn assert_exec_process_starts_and_exits(use_remote: bool) -> Result<()> {
env: Default::default(),
tty: false,
arg0: None,
startup_exec_approval: None,
})
.await?;
assert_eq!(session.process.process_id().as_str(), "proc-1");
@@ -130,6 +131,7 @@ async fn assert_exec_process_streams_output(use_remote: bool) -> Result<()> {
env: Default::default(),
tty: false,
arg0: None,
startup_exec_approval: None,
})
.await?;
assert_eq!(session.process.process_id().as_str(), process_id);
@@ -159,6 +161,7 @@ async fn assert_exec_process_write_then_read(use_remote: bool) -> Result<()> {
env: Default::default(),
tty: true,
arg0: None,
startup_exec_approval: None,
})
.await?;
assert_eq!(session.process.process_id().as_str(), process_id);
@@ -195,6 +198,7 @@ async fn assert_exec_process_preserves_queued_events_before_subscribe(
env: Default::default(),
tty: false,
arg0: None,
startup_exec_approval: None,
})
.await?;
@@ -225,6 +229,7 @@ async fn remote_exec_process_reports_transport_disconnect() -> Result<()> {
env: Default::default(),
tty: false,
arg0: None,
startup_exec_approval: None,
})
.await?;