Summary
The default capability grants broader plugin and core access than the Gate 0 spike uses. The opener plugin is registered but unused, and dialog:default enables save and message commands in addition to directory selection.
Evidence
src-tauri/capabilities/default.json grants core:default, opener:default, and dialog:default.
src-tauri/src/lib.rs initializes the opener plugin.
- No current frontend code imports
@tauri-apps/plugin-opener.
build.removeUnusedCommands is not enabled.
Proposed change
- Remove the opener plugin and JavaScript/Rust dependencies until system-open behavior is implemented.
- Replace plugin and core default permission sets with the individual permissions exercised by the main webview.
- Enable
build.removeUnusedCommands after the ACL is explicit.
- Add a lightweight check that generated capabilities contain no unreviewed defaults.
Acceptance criteria
- The opener plugin is absent until a feature needs it.
- The main capability contains only individually reviewed permissions.
- The current workspace picker, event listener, and drag/drop flow still work.
build.removeUnusedCommands is enabled and the packaged application passes its smoke test.
References
Summary
The default capability grants broader plugin and core access than the Gate 0 spike uses. The opener plugin is registered but unused, and
dialog:defaultenables save and message commands in addition to directory selection.Evidence
src-tauri/capabilities/default.jsongrantscore:default,opener:default, anddialog:default.src-tauri/src/lib.rsinitializes the opener plugin.@tauri-apps/plugin-opener.build.removeUnusedCommandsis not enabled.Proposed change
build.removeUnusedCommandsafter the ACL is explicit.Acceptance criteria
build.removeUnusedCommandsis enabled and the packaged application passes its smoke test.References