mirror of
https://github.com/google/adk-go.git
synced 2026-10-28 08:34:37 +08:00
RunLive appends a finished transcription as an event with no Content, so InputTranscription or OutputTranscription is all the event carries. The Vertex AI backend wrote neither: they are not mapped to a SessionEvent field, and eventNeedsRawEvent did not request raw_event for them. The event was stored empty, and after a reload the contents processor had nothing to turn back into the user or model turn, so the spoken part of the conversation was missing from the model's history. Write raw_event for events that carry a transcription. adk-python keeps transcriptions in raw_event only and never uses the EventMetadata transcription fields, so events written here read back the same in both runtimes. Plain events keep the legacy wire format, so the recorded replays are unaffected. Co-authored-by: João Westerberg <westerberg@google.com>