2e9dcb7c55
The Desktop's content-based truncation-target resolution (and reactions) address persisted turns by row_id, but session.history loaded the transcript without include_row_ids=True, so _history_to_messages had no stamp to forward and the projection silently stripped the one durable address clients can use. Discovered live-testing the #87294 client flow: resolveDurableRowId saw 0 stamped rows and degraded every edit to a plain resubmit.