Celia Chen
e6773f856c
Feat: Preserve network access on read-only sandbox policies ( #13409 )
...
## Summary
`PermissionProfile.network` could not be preserved when additional or
compiled permissions resolved to
`SandboxPolicy::ReadOnly`, because `ReadOnly` had no network_access
field. This change makes read-only + network
enabled representable directly and threads that through the protocol,
app-server v2 mirror, and permission-
merging logic.
## What changed
- Added `network_access: bool` to `SandboxPolicy::ReadOnly` in the core
protocol and app-server v2 protocol.
- Kept backward compatibility by defaulting the new field to false, so
legacy read-only payloads still
deserialize unchanged.
- Updated `has_full_network_access()` and sandbox summaries to respect
read-only network access.
- Preserved PermissionProfile.network when:
- compiling skill permission profiles into sandbox policies
- normalizing additional permissions
- merging additional permissions into existing sandbox policies
- Updated the approval overlay to show network in the rendered
permission rule when requested.
- Regenerated app-server schema fixtures for the new v2 wire shape.
2026-03-04 02:41:57 +00:00
..
2026-02-01 23:38:43 -08:00
2026-02-10 20:09:31 -08:00
2026-03-01 13:43:37 -08:00
2026-02-01 23:38:43 -08:00
2026-02-17 11:45:04 -08:00
2026-02-09 23:10:26 -08:00
2026-02-17 11:45:04 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-03-04 02:41:57 +00:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-03-03 02:35:09 -08:00
2026-02-20 10:56:57 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-11 17:16:27 -08:00
2026-02-05 20:04:01 +00:00
2026-02-05 23:31:04 +00:00
2026-02-25 02:11:51 -08:00
2026-02-25 02:11:51 -08:00
2026-02-25 02:11:51 -08:00
2026-02-25 02:11:51 -08:00
2026-02-20 22:26:14 +00:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-10 20:09:31 -08:00
2026-02-01 23:38:43 -08:00
2026-02-25 12:00:10 -08:00
2026-02-25 12:00:10 -08:00
2026-02-01 23:38:43 -08:00
2026-02-02 17:41:55 -08:00
2026-02-09 20:48:58 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-13 16:26:32 -08:00
2026-02-26 22:02:57 -08:00
2026-02-17 11:02:23 -08:00
2026-02-01 23:38:43 -08:00
2026-03-03 15:56:54 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-25 12:00:10 -08:00
2026-02-27 12:45:59 -08:00
2026-03-03 17:01:00 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-09 13:30:38 -08:00
2026-02-01 23:38:43 -08:00
2026-02-17 14:53:58 -08:00
2026-02-03 14:09:37 -08:00
2026-02-17 11:05:22 -08:00
2026-02-17 14:53:58 -08:00
2026-02-01 23:38:43 -08:00
2026-02-17 14:53:58 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-25 13:14:30 -08:00
2026-02-03 18:15:55 -08:00
2026-02-03 18:15:55 -08:00
2026-03-03 02:35:09 -08:00
2026-03-04 02:41:57 +00:00
2026-02-25 09:59:41 +00:00
2026-02-27 17:42:25 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-03-03 15:56:11 -08:00
2026-03-03 15:56:11 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-27 17:42:25 -08:00
2026-02-25 09:59:10 -08:00
2026-02-25 09:59:10 -08:00
2026-02-25 09:59:10 -08:00
2026-02-25 09:59:10 -08:00
2026-02-25 09:59:10 -08:00
2026-03-03 15:56:54 -08:00
2026-03-04 02:41:57 +00:00
2026-02-01 23:38:43 -08:00
2026-02-27 17:42:25 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-27 17:42:25 -08:00
2026-03-03 02:35:09 -08:00
2026-03-04 02:41:57 +00:00
2026-02-18 15:20:03 -08:00
2026-02-01 23:38:43 -08:00
2026-02-17 14:53:58 -08:00
2026-02-01 23:38:43 -08:00
2026-02-27 17:42:25 -08:00
2026-02-25 13:14:30 -08:00
2026-02-25 13:14:30 -08:00
2026-02-25 12:00:10 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-01 23:38:43 -08:00
2026-02-25 12:00:10 -08:00
2026-03-04 02:41:57 +00:00
2026-02-25 12:00:10 -08:00
2026-02-06 00:35:04 +00:00
2026-02-06 00:35:04 +00:00
2026-02-18 13:03:16 -08:00
2026-02-18 13:03:16 -08:00
2026-02-18 13:03:16 -08:00
2026-02-01 23:38:43 -08:00