Commit Graph

4 Commits

Author SHA1 Message Date
Connor Peet c30ed7c4a5 feat(agent-host): gate inbound filesystem RPCs with a permission service (#314194)
* feat(agent-host): gate inbound filesystem RPCs with a permission service

Reverse `resource{Read,List,Write,Delete,Move}` from remote agent hosts
were routed straight to `IFileService` with no authorization. Add a
permission service that gates each reverse RPC, returns typed
`PermissionDenied` with `data.request`, handles negotiation via the new
`resourceRequest` reverse RPC, and surfaces a Deny / Allow / Always Allow
prompt above the chat input.

URIs are canonicalized through `IFileService.realpath` before comparison
so `..` and symlinks can't escape grants. Implicit read grants are
auto-registered for customization URIs the client sends to the host, so
plugin sync remains friction-free. Always-Allow grants persist into a
new user setting, `chat.agentHost.localFilePermissions`.

* comments and tests
2026-05-04 22:36:24 +02:00
Benjamin Pasero c5b6ef14e6 esm - more cleanup (#230285) 2024-10-02 11:55:17 +02:00
Rob Lourens be54d2be91 Check notebook URIs in BulkCellEdits (#169669)
* Revert "Disallow cell URIs with NotebookEdit"

This reverts commit d7576eea81.

* Check notebook URIs in BulkCellEdits
Fix #146690
2023-01-07 17:35:25 -08:00
Alex Dima 97f826b007 Move assert.js into test/unit 2020-02-07 12:32:06 +01:00