Adam Perry @ OpenAI
3d3ae4965a
Add filesystem accessors bound to environment permissions ( #46268 )
...
## What changed
Add `EnvironmentAccess` and `FileSystemEnvironmentAccessor` to expose filesystem operations with a captured sandbox configuration, without allowing consumers to extract the filesystem or select another sandbox. Include a text-reading helper and an explicit unrestricted constructor.
Provide opaque cache keys that compare filesystem identity and captured permissions without keeping the filesystem alive. Allow opened read streams to outlive the accessor. Export the new APIs through `codex-exec-server` and add `Environment::filesystem_ref()` for borrowing the shared filesystem.
## Testing
Add local and remote coverage for text reads through `EnvironmentAccess`, streams surviving accessor disposal, and cache keys distinguishing changed permissions or a replacement filesystem.
GitOrigin-RevId: 4f6787ed9ba0fb94adea2f31716c4d3132fed07d
2026-09-17 17:59:19 +00:00
..
2026-09-15 02:35:59 +00:00
2026-09-16 23:33:00 +00:00
2026-09-17 04:23:45 +00:00
2026-09-14 22:31:32 +00:00
2026-09-17 05:26:45 +00:00
2026-09-17 10:02:38 +00:00
2026-09-03 06:02:25 +00:00
2026-09-16 16:56:41 +00:00
2026-09-11 20:10:02 +00:00
2026-08-31 13:44:12 +00:00
2026-09-17 00:49:12 +00:00
2026-09-09 03:17:48 +00:00
2026-09-15 19:13:08 +00:00
2026-09-07 16:55:06 +00:00
2026-09-17 05:26:45 +00:00
2026-09-10 21:41:39 +00:00
2026-09-03 01:46:37 +00:00
2026-08-28 19:44:50 +00:00
2026-09-11 17:00:07 +00:00
2026-09-11 17:00:07 +00:00
2026-09-11 17:00:07 +00:00
2026-09-15 18:52:15 +00:00
2026-09-16 11:46:37 +00:00
2026-09-15 17:32:33 +00:00
2026-09-16 01:01:57 +00:00
2026-09-14 19:12:59 +00:00
2026-09-17 01:18:37 +00:00
2026-09-05 01:25:06 +00:00
2026-09-17 01:31:14 +00:00
2026-08-31 21:27:51 +00:00
2026-09-15 18:23:08 +00:00
2026-09-12 18:16:17 +00:00
2026-09-17 17:36:51 +00:00
2026-09-11 01:57:54 +00:00
2026-09-17 04:23:45 +00:00
2026-09-05 12:17:32 +00:00
2026-09-16 04:23:46 +00:00
2026-09-17 17:59:19 +00:00
2026-09-17 04:37:54 +00:00
2026-09-17 16:06:11 +00:00
2026-09-17 04:23:45 +00:00
2026-09-17 04:53:51 +00:00
2026-09-10 18:10:26 +00:00
2026-09-17 17:59:19 +00:00
2026-09-06 20:52:29 +00:00
2026-09-17 10:02:38 +00:00
2026-09-17 10:02:38 +00:00
2026-09-10 00:26:30 +00:00
2026-09-16 18:13:23 +00:00
2026-09-11 21:59:24 +00:00
2026-09-17 05:23:55 +00:00
2026-09-16 19:46:52 +00:00
2026-09-16 15:17:41 +00:00
2026-09-16 23:26:00 +00:00
2026-09-16 19:46:52 +00:00
2026-09-16 19:46:52 +00:00
2026-09-17 05:17:31 +00:00
2026-09-14 22:40:20 +00:00
2026-09-16 21:08:43 +00:00
2026-09-16 22:43:57 +00:00
2026-09-01 17:17:45 +00:00
2026-09-16 21:15:09 +00:00
2026-09-17 05:17:31 +00:00
2026-09-17 17:17:10 +00:00
2026-09-11 03:16:01 +00:00
2026-09-16 01:01:57 +00:00
2026-09-16 22:25:54 +00:00
2026-09-16 22:33:15 +00:00
2026-08-28 01:14:02 +00:00
2026-09-16 18:21:22 +00:00
2026-09-15 18:06:03 +00:00
2026-09-09 04:00:10 +00:00
2026-09-05 05:21:42 +00:00
2026-09-15 02:33:27 +00:00
2026-09-16 09:03:41 +00:00
2026-09-02 18:34:27 +00:00
2026-09-14 21:06:36 +00:00
2026-09-16 22:33:15 +00:00
2026-09-15 21:19:08 +00:00
2026-09-17 17:49:10 +00:00
2026-09-16 16:56:41 +00:00
2026-09-08 00:13:28 +00:00
2026-09-16 03:40:53 +00:00
2026-09-11 22:09:02 +00:00
2026-09-03 20:01:07 +00:00
2026-09-17 15:44:11 +00:00
2026-09-17 15:28:20 +00:00
2026-09-13 18:53:06 +00:00
2026-09-08 21:19:02 +00:00
2026-09-17 04:53:51 +00:00
2026-09-16 23:26:00 +00:00
2026-09-11 06:45:09 +00:00