Owen Lin
5c19155cbd
Add ordinals to paginated rollout records ( #32332 )
...
## Why
Paginated thread history needs durable ordering so consumers can process a rollout suffix without rebuilding all earlier history.
## What changed
- Add optional, zero-based ordinals to `RolloutLine` records in paginated rollouts while leaving legacy rollout serialization unchanged.
- Continue ordinals from the last valid record when appending or resuming, including after gaps or an incomplete tail, and reject overflow without appending.
- Add a stateless `project_rollout_line` helper that maps canonical turn lifecycle and completed-item records into thread-history change sets.
## Testing
- Cover ordinal assignment, legacy compatibility, resume and tail recovery, overflow handling, and thread-history projection for completed, failed, and interrupted turns.
GitOrigin-RevId: 3a9bb6cd2a1f674a9f154342e96e9aa3d8330781
2026-07-11 04:15:42 +00:00
..
2026-07-02 10:59:00 -07:00
2026-06-09 12:48:04 -07:00
2026-06-24 13:24:10 -07:00
2026-06-22 13:19:40 -07:00
2026-07-09 12:16:15 -04:00
2026-05-07 15:44:17 -07:00
2026-07-11 04:15:42 +00:00
2026-07-10 21:24:03 +00:00
2026-06-24 18:00:06 -07:00
2026-07-11 04:15:42 +00:00
2026-07-07 19:48:05 +00:00
2026-06-26 17:34:52 -07:00
2026-06-23 00:02:33 +00:00
2026-07-06 12:17:16 -07:00
2026-06-11 18:16:39 -07:00
2026-05-08 04:07:59 +00:00
2026-07-07 13:00:44 -07:00
2026-06-13 21:43:39 -07:00
2026-06-24 13:25:44 -07:00
2026-07-11 04:15:42 +00:00
2026-07-07 17:05:05 -07:00
2026-07-07 01:34:36 +00:00
2026-06-11 18:16:39 -07:00
2026-06-11 18:16:39 -07:00
2026-07-09 14:40:10 -07:00
2026-07-06 16:26:56 -07:00
2026-07-09 08:17:13 -07:00
2026-07-11 02:29:14 +00:00
2026-07-07 13:00:44 -07:00
2026-07-07 01:12:24 +00:00
2026-05-07 15:44:17 -07:00
2026-06-15 20:10:53 -07:00
2026-07-09 14:32:23 -07:00
2026-06-21 13:35:25 -07:00
2026-07-10 16:11:58 +00:00
2026-06-24 23:24:01 +01:00
2026-06-22 11:11:25 -07:00
2026-07-11 04:15:42 +00:00
2026-07-09 12:25:19 +09:00
2026-07-11 01:11:37 +00:00
2026-07-10 10:29:30 +00:00
2026-06-05 15:41:13 -07:00
2026-07-09 00:58:28 +00:00
2026-07-10 18:08:35 +00:00
2026-07-10 09:56:03 +00:00
2026-07-10 09:09:22 +00:00
2026-07-11 02:29:14 +00:00
2026-06-19 12:47:53 -07:00
2026-07-10 22:04:03 +00:00
2026-07-09 15:44:59 +01:00
2026-07-10 20:01:47 +00:00
2026-05-07 15:44:17 -07:00
2026-07-10 16:55:01 +00:00
2026-05-28 23:09:55 -07:00
2026-07-07 20:01:03 -04:00
2026-07-07 18:00:35 -07:00
2026-07-09 14:26:20 -07:00
2026-07-08 12:17:58 -04:00
2026-06-12 19:52:49 +00:00
2026-07-06 14:51:34 -07:00
2026-05-07 15:44:17 -07:00
2026-07-09 14:26:20 -07:00
2026-07-09 12:25:19 +09:00
2026-07-11 04:15:42 +00:00
2026-06-04 09:53:08 -04:00
2026-07-10 23:22:56 +00:00
2026-07-07 17:43:19 -07:00
2026-07-10 23:39:21 +00:00
2026-07-09 17:33:37 +01:00
2026-06-04 09:53:08 -04:00
2026-07-10 20:01:47 +00:00
2026-06-23 22:51:19 +01:00
2026-05-25 17:26:10 -03:00
2026-07-07 10:52:38 -07:00
2026-07-11 04:15:42 +00:00
2026-05-07 15:44:17 -07:00
2026-04-22 22:24:12 -07:00
2026-05-07 15:44:17 -07:00
2026-07-10 17:59:41 +00:00
2026-07-11 04:15:42 +00:00
2026-07-11 02:29:14 +00:00
2026-07-09 19:36:36 +01:00
2026-05-26 20:59:47 -07:00
2026-06-12 19:52:49 +00:00
2026-07-07 17:50:39 -04:00
2026-06-25 13:56:08 -07:00
2026-07-09 14:01:16 -07:00
2026-07-10 20:01:47 +00:00
2026-05-07 15:44:17 -07:00
2026-05-13 21:23:19 +00:00
2026-05-07 15:44:17 -07:00
2026-07-10 16:11:58 +00:00
2026-07-10 23:26:58 +00:00
2026-07-10 23:39:21 +00:00
2026-07-11 03:01:18 +00:00
2026-05-07 15:44:17 -07:00
2026-06-24 22:33:18 +00:00
2026-06-13 21:43:39 -07:00
2026-06-13 21:43:39 -07:00
2026-07-08 12:57:27 -07:00
2026-07-08 13:22:10 -07:00
2026-07-09 17:31:44 -07:00
2026-07-11 01:46:27 +00:00
2026-07-10 09:09:22 +00:00
2026-04-20 22:41:54 -07:00
2026-07-11 03:27:51 +00:00
2026-07-09 11:53:18 -07:00
2026-06-04 09:16:03 -07:00
2026-05-26 20:59:47 -07:00