One SendStreamingMessage call over gRPC A sequence with two lifelines, a client stub and the A2AService in package lf.a2a.v1. The client sends one SendStreamingMessage rpc with a SendMessageRequest and the a2a-version and a2a-extensions metadata keys. The server answers with a stream of StreamResponse messages: first the task, then status_update and artifact_update payloads, then a status_update with a terminal state. The rpc status ends the stream. The figure uses proto names only, because the kit has no gRPC capture. client generated stub A2AService lf.a2a.v1 1 SendStreamingMessage(SendMessageRequest) metadata: a2a-version, a2a-extensions 2 StreamResponse { task } the Task as the server created it 3 StreamResponse { status_update } TaskStatusUpdateEvent 4 StreamResponse { artifact_update } TaskArtifactUpdateEvent, one chunk 5 StreamResponse { status_update } a terminal TaskState 6 rpc status the stream ends with the rpc