Expand description
Per-phase timing breakdown for Client::start.
Per-phase timing breakdown for Client::start.
Client::start performs several sequential phases between “spawn the CLI”
and “client is ready to create sessions”: resolving (and possibly
extracting) the CLI binary, spawning the subprocess, waiting for the TCP
port announcement, the connect protocol handshake, and the optional
sessionFs.setProvider / llmInference.setProvider registration RPCs.
Each phase is already measured internally with an Instant and logged at
debug. StartupTimings aggregates those durations into a single value
so a host can attribute total startup latency (“time to first token”
groundwork) to a specific phase — e.g. separating “process exec cost” from
“handshake/negotiation cost” — instead of reconstructing it from scattered
log lines.
Retrieve it after start via
Client::startup_timings.
Structs§
- Startup
Timings - Millisecond breakdown of the phases of
Client::start.