File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -310,13 +310,14 @@ impl SubagentHarness {
310310 // process running after its agent turn is gone.
311311 . kill_on_drop ( true ) ;
312312
313- let timeout = std:: time:: Duration :: from_secs ( 60 ) ;
314- let output = tokio:: time:: timeout ( timeout, command. output ( ) )
315- . await
316- . map_err ( |_| format ! ( "Semble Scout search timed out after {}s" , timeout. as_secs( ) ) ) ?
317- . map_err ( |e| {
318- format ! ( "Semble Scout could not start `uvx`: {e}. Install uv first, then retry." )
319- } ) ?;
313+ // The first `uvx` run may need to download Semble and its model assets.
314+ // Do not impose an arbitrary timeout here: on a slow but healthy
315+ // network that would turn a one-time install into a false failure.
316+ // `kill_on_drop(true)` still cleans up the child if the runtime itself
317+ // drops this task during shutdown.
318+ let output = command. output ( ) . await . map_err ( |e| {
319+ format ! ( "Semble Scout could not start `uvx`: {e}. Install uv first, then retry." )
320+ } ) ?;
320321 let stdout = String :: from_utf8_lossy ( & output. stdout ) . trim ( ) . to_string ( ) ;
321322 let stderr = String :: from_utf8_lossy ( & output. stderr ) . trim ( ) . to_string ( ) ;
322323 if !output. status . success ( ) {
You can’t perform that action at this time.
0 commit comments