mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-28 06:05:24 +00:00
feat: add a permission-gated UI action registry and action slots for plugins
Moves the terminal toolbar's hardwired AI button into a slot the ssh-terminal plugin offers and the ai plugin fills, gated on ai.services.use.
This commit is contained in:
1 parent
225f618337
commit
2d6c1cdecb
29 files changed
+1971
-40
No files matched your search
@@ -50,6 +50,18 @@ describe("validate-plugin-manifest.cjs", () => {
|
||||
expect(output).toContain("sampleprovider.undeclared");
|
||||
});
|
||||
|
||||
it("accepts a manifest declaring actions and actionSlots", () => {
|
||||
const { status, output } = runValidator("valid-actions.json");
|
||||
expect(status).toBe(0);
|
||||
expect(output).toContain("Valid plugin manifest");
|
||||
});
|
||||
|
||||
it("rejects an action gated by an undeclared permission", () => {
|
||||
const { status, output } = runValidator("invalid-action-permission.json");
|
||||
expect(status).not.toBe(0);
|
||||
expect(output).toContain("samplebadaction.never_declared");
|
||||
});
|
||||
|
||||
it("rejects a manifest with an unknown permission", () => {
|
||||
const { status, output } = runValidator("invalid-unknown-permission.json");
|
||||
expect(status).not.toBe(0);
|
||||
|
||||
Reference in new issue
Block a user