Files
google--adk-python/tests
Kathy Wu 574da43d65 refactor: build the MCP read timeout in one place
`SessionContext._start` builds `ClientSession`'s `read_timeout_seconds` twice,
once for stdio and once for SSE and streamable HTTP, each with its own inline
`timedelta(...) if ... is not None else None`.

Move that to `_read_timeout`. ADK carries every timeout as float seconds and
now converts once, at the boundary where the SDK is called.

This is a plain de-duplication today. It also isolates a difference between
MCP SDK versions: 1.x types `read_timeout_seconds` as a `timedelta` and 2.x
types it as a float, so the conversion is the only line that has to change.

The explicit `is None` check is deliberate. A zero timeout is a real value, not
a missing one, and a truthiness check would silently turn it into "no timeout".

Co-authored-by: Kathy Wu <wukathy@google.com>
PiperOrigin-RevId: 968580764
2026-08-21 10:49:05 -07:00
..
2026-01-20 14:50:09 -08:00