diff --git a/crates/bsk-cli/src/daemon/ipc.rs b/crates/bsk-cli/src/daemon/ipc.rs index 288a0d3f..3c479d16 100644 --- a/crates/bsk-cli/src/daemon/ipc.rs +++ b/crates/bsk-cli/src/daemon/ipc.rs @@ -62,9 +62,12 @@ pub type RpcHandler = Arc< >; const DEFAULT_RPC_TIMEOUT: Duration = Duration::from_secs(15); -// The upload transaction owns its operation deadline and may need a bounded -// cleanup before it can return a useful structured error. Keep only that -// transport alive slightly longer so it does not replace the result. +// Some tools own their operation deadline and answer exactly at it: the file +// transfers need a bounded cleanup before they can return a useful structured +// error, request-help settles its own wait, and the navigation waits report +// `reached: "timeout"` with the URL the page actually reached. Keep those +// transports alive slightly longer so the transport deadline cannot replace a +// result the extension has already produced. const EXTENSION_RESPONSE_GRACE: Duration = Duration::from_secs(2); /// Upper bound on `wait_for_browser_ms` accepted over IPC. const MAX_BROWSER_WAIT: Duration = Duration::from_secs(60); @@ -799,7 +802,14 @@ fn tool_dispatch_transport_timeout(method: &Method, params: &Value) -> Result