summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--packages/opencode/src/permission/next.ts6
1 files changed, 3 insertions, 3 deletions
diff --git a/packages/opencode/src/permission/next.ts b/packages/opencode/src/permission/next.ts
index 6d18caefb..3f8e7c648 100644
--- a/packages/opencode/src/permission/next.ts
+++ b/packages/opencode/src/permission/next.ts
@@ -232,9 +232,9 @@ export namespace PermissionNext {
const result = new Set<string>()
for (const tool of tools) {
const permission = EDIT_TOOLS.includes(tool) ? "edit" : tool
- if (evaluate(permission, "*", ruleset).action === "deny") {
- result.add(tool)
- }
+ const rule = ruleset.findLast((r) => Wildcard.match(permission, r.pattern))
+ if (!rule) continue
+ if (rule.pattern === "*" && rule.action === "deny") result.add(tool)
}
return result
}