Dylan Hurd
1836ae0612
Preserve thread settings for goal-first and forked threads ( #34469 )
...
## Why
Goal-first and forked threads could create rollouts without recording their
effective thread settings. Resuming those threads after a restart could then
use current configuration instead of the settings selected when the thread was
created.
## What changed
- Persist a `thread_settings_applied` item when a goal first materializes a
rollout, including a follow-up snapshot if settings changed concurrently.
- Append each fork's effective settings after its copied history so they take
precedence over inherited settings during resume.
- Centralize conversion from `ThreadConfigSnapshot` to
`ThreadSettingsSnapshot`.
## Testing
Added coverage that restarts the app server and verifies goal-first and forked
threads retain their respective `approvals_reviewer` settings.
GitOrigin-RevId: 6cb9aaae73bbe9ca432831cff7e826f95ffd6d01
2026-07-21 05:19:49 +00:00
..
2026-07-17 15:33:32 +00:00
2026-06-25 18:15:48 -07:00
2026-07-17 15:23:35 +00:00
2026-07-16 16:43:38 +00:00
2026-07-20 22:06:50 +00:00
2026-07-08 14:13:59 -07:00
2026-07-09 00:17:38 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-16 04:45:05 +00:00
2026-07-20 18:46:02 +00:00
2026-05-28 14:54:39 -07:00
2026-07-06 10:17:15 -07:00
2026-07-08 00:15:49 +00:00
2026-07-20 17:36:44 +00:00
2026-07-15 05:21:13 +00:00
2026-07-08 00:15:49 +00:00
2026-07-14 01:49:16 +00:00
2026-06-27 19:34:10 +00:00
2026-07-08 14:13:59 -07:00
2026-07-08 14:13:59 -07:00
2026-07-18 20:59:57 +00:00
2026-07-08 14:13:59 -07:00
2026-07-21 02:59:22 +00:00
2026-07-08 00:15:49 +00:00
2026-07-20 18:46:02 +00:00
2026-07-15 20:59:21 +00:00
2026-07-20 16:47:03 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-20 20:43:36 +00:00
2026-07-08 00:15:49 +00:00
2026-07-15 10:18:51 +00:00
2026-07-14 04:41:08 +00:00
2026-07-08 00:15:49 +00:00
2026-07-17 19:58:56 +00:00
2026-07-10 16:11:58 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-09 12:16:15 -04:00
2026-07-17 20:02:51 +00:00
2026-07-17 20:02:51 +00:00
2026-07-17 21:29:51 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-14 22:43:26 +00:00
2026-07-18 20:59:57 +00:00
2026-07-08 14:13:59 -07:00
2026-07-08 00:15:49 +00:00
2026-07-20 06:13:29 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-15 15:29:13 +00:00
2026-07-08 00:15:49 +00:00
2026-07-17 15:45:48 +00:00
2026-07-14 04:41:08 +00:00
2026-07-17 19:58:56 +00:00
2026-07-08 14:13:59 -07:00
2026-07-14 21:01:54 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-15 02:35:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-20 21:00:17 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-07-08 00:15:49 +00:00
2026-05-12 18:40:53 -07:00
2026-07-20 17:36:44 +00:00
2026-07-21 05:19:49 +00:00
2026-07-15 15:29:13 +00:00
2026-07-14 04:41:08 +00:00
2026-07-08 14:13:59 -07:00
2026-07-15 15:29:13 +00:00
2026-07-14 00:38:04 +00:00
2026-07-15 21:25:24 +00:00
2026-07-08 14:13:59 -07:00
2026-07-08 14:13:59 -07:00
2026-07-17 15:18:47 +00:00
2026-07-21 01:09:37 +00:00
2026-07-08 14:13:59 -07:00
2026-07-16 19:31:26 +00:00
2026-07-08 00:15:49 +00:00