viyatb-oai
73abda8bfe
Isolate external editor buffers from sandbox-writable paths ( #38830 )
...
## Why
External editor buffers can contain the current composer text and should not be
placed in directories exposed as writable by a restricted filesystem policy.
## What changed
- Create editor buffer files under a protected `editor` directory, trying the
configured Codex home, the default Codex home, and a workspace fallback.
- Reject candidates that overlap writable roots or resolve through symbolic
links, while preserving external editor support for full-disk-write policies.
- Surface an editor error when no protected directory is available.
## Testing
Add coverage for writable roots, aliases, symbolic links, fallback selection,
temporary-directory grants, full-disk-write policies, and editor invocation.
GitOrigin-RevId: df1029d81b327678991ab84ffd1077f0e5855631
2026-08-16 03:14:17 +00:00
..
2026-03-28 11:23:07 -06:00
2026-07-15 01:36:44 +00:00
2026-05-13 07:13:57 +00:00
2026-03-28 11:23:07 -06:00
2026-04-07 17:55:40 -07:00
2026-08-05 08:04:15 +00:00
2026-08-16 03:14:17 +00:00
2026-07-18 03:58:20 +00:00
2026-07-17 23:11:07 +00:00
2026-07-18 03:58:20 +00:00
2026-06-11 22:26:31 -07:00
2026-05-14 20:51:08 -07:00
2026-04-27 09:51:12 -07:00
2026-07-18 03:58:20 +00:00
2026-07-18 03:58:20 +00:00
2026-07-18 03:58:20 +00:00
2026-07-18 03:58:20 +00:00
2026-07-18 03:58:20 +00:00
2026-06-08 17:03:52 -07:00
2026-07-20 21:00:17 +00:00
2026-07-21 19:08:58 +00:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-07-21 15:53:33 +00:00
2026-07-11 17:47:17 +00:00
2026-07-11 17:47:17 +00:00
2026-07-11 17:47:17 +00:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-06-05 08:34:34 -07:00
2026-07-22 15:34:11 +00:00
2026-07-22 15:34:11 +00:00
2026-07-19 21:34:05 +00:00
2026-07-17 23:19:12 +00:00
2026-05-26 16:08:45 -03:00
2026-05-26 16:08:45 -03:00
2026-08-01 17:43:03 +00:00
2026-08-01 17:43:03 +00:00
2026-04-28 12:52:25 -03:00
2026-05-04 14:40:50 -03:00
2026-05-04 14:40:50 -03:00
2026-05-04 14:40:50 -03:00
2026-07-23 21:03:40 +00:00
2026-07-23 21:03:40 +00:00
2026-07-23 21:03:40 +00:00
2026-07-23 21:03:40 +00:00
2026-08-01 17:43:03 +00:00
2026-07-23 21:03:40 +00:00
2026-07-23 21:03:40 +00:00
2026-06-08 17:02:36 -07:00
2026-04-27 13:40:46 -07:00
2026-05-27 16:18:24 -03:00
2026-03-28 11:23:07 -06:00
2026-05-09 13:58:10 -03:00
2026-05-25 15:42:28 -03:00
2026-05-27 20:27:55 +00:00
2026-07-29 14:01:31 +00:00
2026-05-27 20:27:55 +00:00
2026-05-27 20:27:55 +00:00
2026-05-27 20:27:55 +00:00
2026-05-27 16:18:24 -03:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-08-04 19:12:46 +00:00
2026-08-04 18:59:32 +00:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-07-31 18:58:32 +00:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-08-07 03:54:23 +00:00
2026-05-05 13:32:54 -07:00
2026-04-06 08:51:13 -07:00
2026-05-05 13:32:54 -07:00
2026-08-15 17:30:13 +00:00
2026-08-15 17:30:13 +00:00
2026-08-14 20:35:11 +00:00
2026-06-05 08:32:07 -07:00
2026-06-05 08:32:07 -07:00
2026-05-27 18:59:17 +00:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-05-01 09:07:56 -07:00
2026-07-29 13:57:46 +00:00
2026-03-28 11:23:07 -06:00