Files
9prodhi b1f5c43bc2 fix(protocol): plumb --timeout through navigate and bound Client::send
Previously the CLI --timeout flag was dropped at Instance::navigate
(parameter declared _timeout, never forwarded) and the protocol-layer
Client::send blocked on bare rx.recv() with no deadline. A
Content-Disposition: attachment navigation produced no response, the
pending slot leaked, and the daemon needed kill -9.

This commit:
- Adds ProtocolError::Timeout variant.
- Adds Client::send_with_timeout that uses rx.recv_timeout and frees
  the pending slot on timeout.
- Defaults Client::send to a 60s timeout (no call can hang forever).
- Adds a timeout parameter to MainFrame::navigate.
- Forwards Instance::navigate's CLI timeout through to the protocol
  layer.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 14:31:28 +00:00
..