From af3bf801ce719cc8d3f043b1b1dc5de4784f9abb Mon Sep 17 00:00:00 2001 From: jif-oai Date: Thu, 16 Oct 2025 11:03:07 +0100 Subject: [PATCH] R6 --- codex-rs/cli/src/infty/commands.rs | 9 +++++---- codex-rs/codex-infty/tests/schemas.rs | 18 ++++++++++++------ codex-rs/codex-infty/tests/timeouts.rs | 8 +++++--- .../codex-infty/tests/verifier_replacement.rs | 6 ++++-- 4 files changed, 26 insertions(+), 15 deletions(-) diff --git a/codex-rs/cli/src/infty/commands.rs b/codex-rs/cli/src/infty/commands.rs index dda5e47ca6..531b5a22e6 100644 --- a/codex-rs/cli/src/infty/commands.rs +++ b/codex-rs/cli/src/infty/commands.rs @@ -92,11 +92,12 @@ pub(crate) async fn run_create( }; if let Some(objective) = args.objective { - let mut options = RunExecutionOptions::default(); - options.objective = Some(objective); let timeout = Duration::from_secs(args.timeout_secs); - options.director_timeout = timeout; - options.verifier_timeout = timeout; + let options = RunExecutionOptions { + objective: Some(objective), + director_timeout: timeout, + verifier_timeout: timeout, + }; let start = Instant::now(); let start_header = format!("Starting run {run_id}"); diff --git a/codex-rs/codex-infty/tests/schemas.rs b/codex-rs/codex-infty/tests/schemas.rs index a30147367b..96b880f3f0 100644 --- a/codex-rs/codex-infty/tests/schemas.rs +++ b/codex-rs/codex-infty/tests/schemas.rs @@ -67,8 +67,10 @@ async fn director_request_includes_output_schema() -> anyhow::Result<()> { verifiers: Vec::new(), }; - let mut options = RunExecutionOptions::default(); - options.objective = Some("Kick off".to_string()); + let options = RunExecutionOptions { + objective: Some("Kick off".to_string()), + ..Default::default() + }; // Drive the run in the background; we'll assert the request shape then cancel. let fut = tokio::spawn(async move { @@ -164,8 +166,10 @@ async fn final_delivery_request_includes_output_schema() -> anyhow::Result<()> { verifiers: Vec::new(), }; - let mut options = RunExecutionOptions::default(); - options.objective = Some("Kick off".to_string()); + let options = RunExecutionOptions { + objective: Some("Kick off".to_string()), + ..Default::default() + }; let fut = tokio::spawn(async move { let _ = orchestrator.execute_new_run(params, options).await; @@ -250,8 +254,10 @@ async fn verifier_request_includes_output_schema() -> anyhow::Result<()> { verifiers: vec![RoleConfig::new("verifier", verifier_config)], }; - let mut options = RunExecutionOptions::default(); - options.objective = Some("Kick off".to_string()); + let options = RunExecutionOptions { + objective: Some("Kick off".to_string()), + ..Default::default() + }; let fut = tokio::spawn(async move { let _ = orchestrator.execute_new_run(params, options).await; diff --git a/codex-rs/codex-infty/tests/timeouts.rs b/codex-rs/codex-infty/tests/timeouts.rs index b89d316c94..29894172e8 100644 --- a/codex-rs/codex-infty/tests/timeouts.rs +++ b/codex-rs/codex-infty/tests/timeouts.rs @@ -66,9 +66,11 @@ async fn direction_request_times_out_when_director_is_silent() -> anyhow::Result verifiers: Vec::new(), }; - let mut options = RunExecutionOptions::default(); - options.objective = Some("Kick off".to_string()); - options.director_timeout = Duration::from_millis(50); + let options = RunExecutionOptions { + objective: Some("Kick off".to_string()), + director_timeout: Duration::from_millis(50), + ..Default::default() + }; let err = orchestrator .execute_new_run(params, options) diff --git a/codex-rs/codex-infty/tests/verifier_replacement.rs b/codex-rs/codex-infty/tests/verifier_replacement.rs index f39a6ca413..55cdc8ad4f 100644 --- a/codex-rs/codex-infty/tests/verifier_replacement.rs +++ b/codex-rs/codex-infty/tests/verifier_replacement.rs @@ -98,8 +98,10 @@ async fn replaces_passing_verifiers_and_keeps_failing() -> anyhow::Result<()> { .and_then(|m| m.rollout_path.clone()) .expect("beta initial rollout path"); - let mut options = RunExecutionOptions::default(); - options.verifier_timeout = Duration::from_secs(2); + let options = RunExecutionOptions { + verifier_timeout: Duration::from_secs(2), + ..Default::default() + }; // Round 1: alpha pass (should be replaced), beta fail (should be kept) let _summary1 = orchestrator