jif
5d3fe48b08
Improve Guardian retries and review failure reporting ( #44482 )
...
## Why
Transient rate limits can end automatic approval reviews prematurely, and review failures currently report high risk even when no assessment completed.
## What changed
- Retry rate limits and recoverable exhausted-stream errors, while excluding non-transient HTTP failures.
- Preserve server retry delays after stream retries are exhausted and honor them within the review deadline. Scope retry advice to the current turn so reused sessions cannot apply stale delays.
- Keep failed reviews denied, but leave risk and authorization unset and explain that the review could not complete without declaring the action unsafe.
## Testing
Add an integration test covering rate-limit recovery through approval and tool execution, asserting that the action executes exactly once after approval. Update failure assertions to check absent assessment fields and the review-failure explanation.
GitOrigin-RevId: 1163cfde35c6b8eb23b6f24f1f24461b86ded838
2026-09-10 09:50:59 +00:00
..
2026-09-09 23:23:59 +00:00
2026-09-09 22:22:08 +00:00
2026-09-09 18:50:32 +00:00
2026-09-09 23:23:59 +00:00
2026-09-01 18:24:56 +00:00
2026-09-10 09:50:59 +00:00
2026-09-09 17:45:37 +00:00
2026-09-03 04:38:26 +00:00
2026-08-21 06:41:28 +00:00
2026-08-31 22:38:23 +00:00
2026-08-25 05:16:45 +00:00
2026-09-10 08:57:35 +00:00
2026-09-09 19:38:24 +00:00
2026-09-09 18:04:04 +00:00
2026-09-10 08:57:35 +00:00
2026-09-09 17:45:37 +00:00
2026-08-25 13:10:24 +00:00
2026-08-25 21:20:51 +00:00
2026-08-26 16:28:35 +00:00
2026-09-08 21:11:43 +00:00
2026-09-02 23:58:24 +00:00
2026-09-02 23:58:24 +00:00
2026-09-09 17:56:06 +00:00
2026-09-09 17:56:06 +00:00
2026-09-09 23:46:17 +00:00
2026-09-09 23:46:17 +00:00
2026-08-23 10:06:57 +00:00
2026-09-09 23:23:59 +00:00
2026-09-09 23:23:59 +00:00
2026-09-09 18:40:53 +00:00
2026-09-09 18:40:53 +00:00
2026-09-09 18:40:53 +00:00
2026-09-09 18:40:53 +00:00
2026-08-28 21:40:23 +00:00
2026-08-23 21:29:11 +00:00
2026-09-09 18:40:53 +00:00
2026-09-09 18:40:53 +00:00
2026-08-25 17:41:22 +00:00
2026-09-09 18:40:53 +00:00
2026-09-01 13:43:27 +00:00
2026-09-01 13:43:27 +00:00
2026-08-25 19:54:52 +00:00
2026-09-09 18:50:32 +00:00
2026-08-04 00:51:53 +00:00
2026-09-02 02:09:35 +00:00
2026-08-10 01:44:30 +00:00
2026-09-03 00:17:19 +00:00
2026-09-01 14:43:27 +00:00
2026-08-20 07:03:02 +00:00
2026-09-01 18:24:56 +00:00
2026-09-09 04:00:10 +00:00
2026-09-09 04:00:10 +00:00
2026-08-25 21:34:05 +00:00
2026-09-09 17:59:10 +00:00
2026-08-21 21:17:42 +00:00
2026-09-10 00:26:30 +00:00
2026-08-23 22:23:40 +00:00
2026-09-03 22:22:48 +00:00
2026-09-09 19:31:12 +00:00
2026-08-26 16:28:35 +00:00
2026-09-04 13:50:27 +00:00
2026-08-29 06:05:28 +00:00
2026-09-01 20:46:17 +00:00
2026-09-09 17:45:37 +00:00
2026-08-06 13:37:07 +00:00
2026-09-01 13:43:27 +00:00
2026-08-25 16:47:13 +00:00
2026-08-20 17:46:05 +00:00
2026-08-17 19:06:53 +00:00
2026-09-09 17:46:00 +00:00
2026-09-04 21:17:25 +00:00
2026-08-17 04:01:37 +00:00
2026-08-18 18:41:40 +00:00
2026-09-08 23:45:10 +00:00
2026-09-02 02:09:35 +00:00
2026-08-31 22:38:23 +00:00
2026-09-09 18:40:53 +00:00
2026-09-10 09:50:59 +00:00
2026-08-03 09:46:38 +00:00
2026-09-02 23:58:24 +00:00
2026-09-02 23:58:24 +00:00
2026-08-31 23:29:20 +00:00
2026-08-31 23:29:20 +00:00
2026-08-23 20:08:40 +00:00
2026-08-24 10:56:54 +00:00
2026-09-09 17:59:10 +00:00
2026-09-09 00:42:57 +00:00
2026-09-09 04:00:10 +00:00
2026-09-09 06:04:59 +00:00
2026-09-09 06:04:59 +00:00
2026-08-20 06:03:25 +00:00
2026-08-20 06:03:25 +00:00
2026-08-27 00:07:26 +00:00
2026-08-13 11:11:26 +00:00
2026-09-09 17:46:00 +00:00
2026-09-09 17:46:00 +00:00
2026-09-09 23:46:17 +00:00
2026-09-09 16:48:03 +00:00
2026-09-10 03:18:28 +00:00
2026-09-09 16:48:03 +00:00
2026-08-11 19:30:12 +00:00
2026-09-09 20:32:57 +00:00
2026-09-09 20:32:57 +00:00
2026-09-05 13:02:49 +00:00
2026-09-04 12:56:26 +00:00
2026-08-25 17:41:22 +00:00
2026-09-02 20:30:45 +00:00
2026-09-09 19:31:12 +00:00
2026-08-20 06:29:32 +00:00