@@ -2616,6 +2616,12 @@ grep -Fxq preserved "$TMPDIR/caller-fd"
26162616 expect ( assertions ) . toContain ( "OPENCLAW_CODEX_NPM_PLUGIN_ASSERT_MAX_TRANSCRIPT_FILES" ) ;
26172617 expect ( assertions ) . toContain ( "OPENCLAW_CODEX_NPM_PLUGIN_ASSERT_MAX_TRANSCRIPT_WALK_ENTRIES" ) ;
26182618 expect ( assertions ) . toContain ( "OPENCLAW_CODEX_NPM_PLUGIN_ASSERT_MAX_TRANSCRIPT_SCAN_BYTES" ) ;
2619+ expect ( assertions ) . toContain ( "const AGENT_TURN_TIMEOUT_SECONDS = readPositiveIntEnv(" ) ;
2620+ expect ( assertions ) . toContain ( '"OPENCLAW_CODEX_NPM_PLUGIN_AGENT_TIMEOUT_SECONDS"' ) ;
2621+ expect ( assertions ) . toContain ( "requestTimeoutMs: AGENT_TURN_TIMEOUT_SECONDS * 1000" ) ;
2622+ expect ( assertions ) . toContain ( "timeoutSeconds: AGENT_TURN_TIMEOUT_SECONDS" ) ;
2623+ expect ( assertions ) . not . toContain ( "requestTimeoutMs: 420_000" ) ;
2624+ expect ( assertions ) . not . toContain ( "timeoutSeconds: 420" ) ;
26192625 expect ( assertions ) . toContain ( "readTextFileBounded" ) ;
26202626 expect ( assertions ) . toContain ( "readTextFileTail" ) ;
26212627 expect ( assertions ) . toContain (
@@ -2628,6 +2634,29 @@ grep -Fxq preserved "$TMPDIR/caller-fd"
26282634 expect ( runner ) . not . toContain ( "cat /tmp/openclaw-codex-plugin-pack.log" ) ;
26292635 expect ( runner ) . toContain ( "tail -n 120 /tmp/openclaw-codex-agent-after-uninstall.err" ) ;
26302636 expect ( runner ) . not . toContain ( "cat /tmp/openclaw-codex-agent-after-uninstall.err" ) ;
2637+ const profileSourceIndex = runner . indexOf ( 'source "$PROFILE_FILE"' ) ;
2638+ const agentTimeoutEnvIndex = runner . indexOf (
2639+ "docker_e2e_read_positive_int_env OPENCLAW_CODEX_NPM_PLUGIN_AGENT_TIMEOUT_SECONDS 420" ,
2640+ ) ;
2641+ const dockerBuildIndex = runner . indexOf ( "docker_e2e_build_or_reuse" ) ;
2642+ expect ( profileSourceIndex ) . toBeGreaterThanOrEqual ( 0 ) ;
2643+ expect ( agentTimeoutEnvIndex ) . toBeGreaterThan ( profileSourceIndex ) ;
2644+ expect ( dockerBuildIndex ) . toBeGreaterThan ( agentTimeoutEnvIndex ) ;
2645+ expect ( runner ) . toContain (
2646+ "docker_e2e_read_positive_int_env OPENCLAW_CODEX_NPM_PLUGIN_AGENT_TIMEOUT_SECONDS 420" ,
2647+ ) ;
2648+ expect ( runner ) . toContain (
2649+ 'COMMAND_TIMEOUT="${OPENCLAW_E2E_COMMAND_TIMEOUT:-$((AGENT_TURN_TIMEOUT_SECONDS + 60))s}"' ,
2650+ ) ;
2651+ expect ( runner ) . toContain (
2652+ '-e "OPENCLAW_CODEX_NPM_PLUGIN_AGENT_TIMEOUT_SECONDS=$AGENT_TURN_TIMEOUT_SECONDS"' ,
2653+ ) ;
2654+ expect ( runner ) . toContain ( '-e "OPENCLAW_E2E_COMMAND_TIMEOUT=$COMMAND_TIMEOUT"' ) ;
2655+ expect ( runner ) . toContain (
2656+ 'AGENT_TURN_TIMEOUT_SECONDS="${OPENCLAW_CODEX_NPM_PLUGIN_AGENT_TIMEOUT_SECONDS:-420}"' ,
2657+ ) ;
2658+ expect ( runner ) . toContain ( '--timeout "$AGENT_TURN_TIMEOUT_SECONDS"' ) ;
2659+ expect ( runner ) . not . toContain ( "--timeout 420" ) ;
26312660 } ) ;
26322661
26332662 it . each ( [
@@ -2637,6 +2666,12 @@ grep -Fxq preserved "$TMPDIR/caller-fd"
26372666 "OPENCLAW_CODEX_NPM_PLUGIN_ASSERT_MAX_TEXT_FILE_BYTES" ,
26382667 "64kb" ,
26392668 ] ,
2669+ [
2670+ "Codex npm plugin live agent timeout" ,
2671+ CODEX_NPM_PLUGIN_LIVE_DOCKER_E2E_PATH ,
2672+ "OPENCLAW_CODEX_NPM_PLUGIN_AGENT_TIMEOUT_SECONDS" ,
2673+ "420s" ,
2674+ ] ,
26402675 [
26412676 "npm onboard channel-agent" ,
26422677 NPM_ONBOARD_CHANNEL_AGENT_DOCKER_E2E_PATH ,
@@ -2683,6 +2718,7 @@ grep -Fxq preserved "$TMPDIR/caller-fd"
26832718 [ "OPENCLAW_CODEX_NPM_PLUGIN_ASSERT_MAX_TRANSCRIPT_FILES" , "64" ] ,
26842719 [ "OPENCLAW_CODEX_NPM_PLUGIN_ASSERT_MAX_TRANSCRIPT_WALK_ENTRIES" , "4096" ] ,
26852720 [ "OPENCLAW_CODEX_NPM_PLUGIN_ASSERT_MAX_TRANSCRIPT_SCAN_BYTES" , "2097152" ] ,
2721+ [ "OPENCLAW_CODEX_NPM_PLUGIN_AGENT_TIMEOUT_SECONDS" , "420" ] ,
26862722 ] ,
26872723 ] ,
26882724 [
0 commit comments