the protocol message id this run of text was streamed under. Kept because a single UiMessage can hold several text runs -- an agent that speaks, calls a tool, then speaks again emits two text messages with two ids -- and a renderer or a resend needs to know which is which.