{"version":"2.1.260","anchor":"thinking-tokens-frames-now-carry-the-triggering-user-message","canonical_anchor":"thinking-tokens-frames-now-carry-the-triggering-user-message","heading":"Turn streaming now propagates the triggering user_message_uuid and tracks first-frame upload","tier":"internal","area":"SDK","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.260\/e\/thinking-tokens-frames-now-carry-the-triggering-user-message","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.260","markdown":"### Turn streaming now propagates the triggering user_message_uuid and tracks first-frame upload\n\nLive thinking-token frames now carry the triggering user message's uuid for attribution.\n\nLive `thinking_tokens` progress frames (stream-json \/ Agent SDK) are now stamped with `user_message_uuid`, the client uuid of the user message (`submitMessage` options.uuid) that triggered the turn, letting a consumer attribute thinking progress to a send before any reply frame arrives. It's absent on synthetic\/scheduled turns, turns without a client uuid, and on Remote Control (interactive terminal) sessions. The synthesized `result` SDK event (built by the new `own` function) likewise now includes `user_message_uuid` when available and the outcome isn't a terminal-reason exit.\n\nThe turn-streaming generator also now calls an optional `trackFirstFrameUpload` callback on the first non-thinking `stream_event` of a turn.\n\n- Area: SDK\n- Names: `user_message_uuid`\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 2\/5"}