xl-openai and GitHub
406062c3af
[codex] Preserve remote plugin download status errors ( #28863 )
...
## Summary
- preserve the original HTTP status when a remote plugin bundle download
returns a non-success response
- retain at most 8 KiB of the error response body and annotate
truncation or body-read failures
- add regression coverage for an oversized error response
## Root cause
The non-success response path reused the normal size-limited body
reader. When an error response exceeded 8 KiB, that reader returned
`DownloadTooLarge` before the code constructed `DownloadStatus`, masking
the upstream HTTP status and response context.
## Impact
Remote plugin installation failures now retain the actionable upstream
HTTP status without allowing unbounded error bodies into logs.
## Validation
- `just test -p codex-app-server
plugin_install_preserves_status_when_remote_bundle_error_body_is_too_large`
- `just fmt`
- `git diff --check`
2026-06-18 14:29:01 -07:00
..
2026-06-08 11:39:08 +02:00
2026-06-09 12:48:04 -07:00
2026-05-26 20:59:47 -07:00
2026-06-11 18:16:39 -07:00
2026-06-17 11:23:39 -07:00
2026-06-18 14:02:54 -07:00
2026-06-18 14:29:01 -07:00
2026-06-18 11:54:49 -07:00
2026-06-11 21:28:52 -07:00
2026-06-18 14:02:54 -07:00
2026-06-18 11:54:49 -07:00
2026-06-18 14:05:27 -07:00
2026-06-18 19:31:19 +00:00
2026-06-18 19:31:19 +00:00
2026-06-11 18:16:39 -07:00
2026-06-15 21:54:01 +00:00
2026-06-13 21:43:39 -07:00
2026-06-18 20:29:01 +00:00
2026-06-18 14:05:27 -07:00
2026-06-18 14:05:27 -07:00
2026-06-18 14:05:27 -07:00
2026-06-11 18:16:39 -07:00
2026-06-11 18:16:39 -07:00
2026-06-16 19:28:55 -07:00
2026-06-11 22:37:26 -07:00
2026-06-12 02:49:17 -07:00
2026-06-17 20:57:13 -07:00
2026-06-01 21:25:42 -07:00
2026-06-15 21:53:47 -07:00
2026-06-15 20:10:53 -07:00
2026-06-18 20:29:01 +00:00
2026-06-13 21:43:39 -07:00
2026-06-18 11:39:02 -07:00
2026-06-18 20:29:01 +00:00
2026-06-15 15:05:28 -07:00
2026-06-18 17:19:24 -04:00
2026-06-17 17:20:53 -07:00
2026-06-18 14:29:01 -07:00
2026-06-18 00:16:46 -07:00
2026-06-05 15:41:13 -07:00
2026-06-18 14:05:27 -07:00
2026-06-18 11:03:42 -07:00
2026-06-15 21:53:47 -07:00
2026-06-13 21:43:39 -07:00
2026-06-18 10:50:15 -07:00
2026-06-15 23:17:24 -07:00
2026-06-15 15:05:28 -07:00
2026-06-18 14:05:27 -07:00
2026-05-26 15:59:25 -07:00
2026-06-17 10:00:42 -07:00
2026-05-28 23:09:55 -07:00
2026-06-12 16:58:42 -07:00
2026-06-15 15:12:26 -07:00
2026-06-03 19:08:19 -07:00
2026-06-12 19:52:49 +00:00
2026-06-18 14:09:38 +02:00
2026-06-18 14:05:27 -07:00
2026-06-18 19:18:42 +00:00
2026-06-18 11:54:49 -07:00
2026-06-04 09:53:08 -04:00
2026-06-17 11:23:39 -07:00
2026-06-05 17:36:18 -07:00
2026-06-13 21:43:39 -07:00
2026-06-18 14:09:38 +02:00
2026-06-04 09:53:08 -04:00
2026-06-15 21:53:47 -07:00
2026-06-18 00:16:46 -07:00
2026-05-25 17:26:10 -03:00
2026-06-18 13:16:14 -07:00
2026-06-18 14:02:54 -07:00
2026-06-18 11:54:49 -07:00
2026-06-17 18:52:18 +00:00
2026-06-18 05:00:04 +00:00
2026-06-18 14:09:38 +02:00
2026-05-26 20:59:47 -07:00
2026-06-12 19:52:49 +00:00
2026-06-15 08:28:02 -07:00
2026-06-11 18:16:39 -07:00
2026-06-17 19:16:18 +00:00
2026-06-17 18:52:18 +00:00
2026-05-13 21:23:19 +00:00
2026-06-18 19:18:42 +00:00
2026-06-18 12:13:31 -07:00
2026-06-16 23:44:42 +00:00
2026-06-18 14:05:27 -07:00
2026-06-18 20:29:01 +00:00
2026-06-13 21:43:39 -07:00
2026-06-13 21:43:39 -07:00
2026-06-18 11:04:30 -07:00
2026-06-18 14:05:27 -07:00
2026-06-15 16:39:41 -07:00
2026-06-11 18:16:39 -07:00
2026-06-04 09:16:03 -07:00
2026-05-26 20:59:47 -07:00