felixxia-oai
16cb72218c
Force fresh Guardian sessions for parent-checkpoint recovery ( #51139 )
...
## Why
A Guardian review restarting from the parent checkpoint must bypass cached reviewer sessions and snapshots, even when another review is using the cached session.
## What changed
- Add `ReviewerRequest::requires_fresh_session` and enable it for parent-checkpoint recovery.
- Replace an idle cached session with a fresh reusable session, or start a fresh ephemeral session when the cached session is busy. Neither recovery path inherits a cached snapshot.
- Reserve the review permit before validating a cached session and before exposing a newly spawned session to concurrent requests.
## Testing
Add tests covering recovery with idle and busy cached sessions, verifying that recovery receives no cached snapshot and that subsequent reviews reuse the appropriate session.
GitOrigin-RevId: 894f685736da54312336932aa2037e74a20629d9
2026-10-05 17:36:33 +00:00
..
2026-10-02 04:02:14 +00:00
2026-09-29 22:50:07 +00:00
2026-09-30 17:33:59 +00:00
2026-10-04 21:19:05 +00:00
2026-09-30 00:51:39 +00:00
2026-10-05 09:42:37 +00:00
2026-09-26 23:17:41 +00:00
2026-10-04 06:28:20 +00:00
2026-10-02 22:55:08 +00:00
2026-09-22 06:36:09 +00:00
2026-10-02 16:05:51 +00:00
2026-10-01 15:57:03 +00:00
2026-09-21 22:58:49 +00:00
2026-09-23 00:47:34 +00:00
2026-10-02 22:20:55 +00:00
2026-09-30 18:49:29 +00:00
2026-10-04 06:28:20 +00:00
2026-10-01 22:32:29 +00:00
2026-09-29 13:58:09 +00:00
2026-09-29 03:32:19 +00:00
2026-09-25 16:57:42 +00:00
2026-10-05 16:58:29 +00:00
2026-10-03 07:37:00 +00:00
2026-10-05 16:58:29 +00:00
2026-10-02 20:19:28 +00:00
2026-09-25 00:20:02 +00:00
2026-09-24 01:50:36 +00:00
2026-10-01 17:10:03 +00:00
2026-10-04 04:25:31 +00:00
2026-10-02 22:12:07 +00:00
2026-10-05 17:36:33 +00:00
2026-10-01 03:31:48 +00:00
2026-09-23 22:20:34 +00:00
2026-10-01 15:57:03 +00:00
2026-10-02 16:55:41 +00:00
2026-10-02 23:54:32 +00:00
2026-10-02 04:25:52 +00:00
2026-10-05 17:36:33 +00:00
2026-09-30 11:59:13 +00:00
2026-10-04 21:08:31 +00:00
2026-10-02 22:47:52 +00:00
2026-10-01 09:52:54 +00:00
2026-10-01 00:43:55 +00:00
2026-10-01 15:57:03 +00:00
2026-10-05 10:16:03 +00:00
2026-10-02 16:55:41 +00:00
2026-10-01 11:01:37 +00:00
2026-10-01 22:32:29 +00:00
2026-09-29 22:24:09 +00:00
2026-10-01 18:05:33 +00:00
2026-10-02 23:26:27 +00:00
2026-09-28 14:46:32 +00:00
2026-09-28 06:30:53 +00:00
2026-10-03 00:31:51 +00:00
2026-10-02 23:26:27 +00:00
2026-10-01 01:38:27 +00:00
2026-10-01 18:05:05 +00:00
2026-10-01 18:05:05 +00:00
2026-09-30 17:45:25 +00:00
2026-09-23 22:20:34 +00:00
2026-10-02 22:12:07 +00:00
2026-10-02 21:42:45 +00:00
2026-10-01 15:57:03 +00:00
2026-09-29 01:14:41 +00:00
2026-10-02 23:54:32 +00:00
2026-10-02 23:15:02 +00:00
2026-10-02 18:48:49 +00:00
2026-10-01 15:57:03 +00:00
2026-09-24 18:08:31 +00:00
2026-09-28 15:58:17 +00:00
2026-09-27 03:26:57 +00:00
2026-10-02 23:34:11 +00:00
2026-10-02 00:46:14 +00:00
2026-10-04 04:25:31 +00:00
2026-10-02 23:34:11 +00:00
2026-10-01 06:29:03 +00:00
2026-10-05 09:51:15 +00:00
2026-10-01 18:05:05 +00:00
2026-10-03 07:14:12 +00:00
2026-10-01 15:57:03 +00:00
2026-09-23 04:25:28 +00:00
2026-09-22 23:37:39 +00:00
2026-10-04 19:07:36 +00:00
2026-10-03 03:20:37 +00:00
2026-09-23 00:47:07 +00:00
2026-10-01 15:57:03 +00:00
2026-10-03 21:20:56 +00:00
2026-10-03 21:20:56 +00:00
2026-10-02 04:02:14 +00:00