summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAiden Cline <[email protected]>2025-09-12 18:59:38 -0500
committerGitHub <[email protected]>2025-09-12 18:59:38 -0500
commitaebd50da7e7402938ff3caeaf5c359bdeb67eaa0 (patch)
tree1410fd2283136fe5c00a76161df82a30da194b3a
parentc02f58c2af1c65849e4a6e427081948ed3157e8d (diff)
downloadopencode-aebd50da7e7402938ff3caeaf5c359bdeb67eaa0.tar.gz
opencode-aebd50da7e7402938ff3caeaf5c359bdeb67eaa0.zip
fix: make permission always behavior match expectation (#2573)
-rw-r--r--packages/opencode/src/permission/index.ts6
1 files changed, 3 insertions, 3 deletions
diff --git a/packages/opencode/src/permission/index.ts b/packages/opencode/src/permission/index.ts
index b0c3ccfee..e8b4e6812 100644
--- a/packages/opencode/src/permission/index.ts
+++ b/packages/opencode/src/permission/index.ts
@@ -83,7 +83,7 @@ export namespace Permission {
toolCallID: input.callID,
pattern: input.pattern,
})
- if (approved[input.sessionID]?.[input.pattern ?? input.type]) return
+ if (approved[input.sessionID]?.[input.type]) return
const info: Info = {
id: Identifier.ascending("permission"),
type: input.type,
@@ -141,9 +141,9 @@ export namespace Permission {
})
if (input.response === "always") {
approved[input.sessionID] = approved[input.sessionID] || {}
- approved[input.sessionID][match.info.pattern ?? match.info.type] = true
+ approved[input.sessionID][match.info.type] = true
for (const item of Object.values(pending[input.sessionID])) {
- if ((item.info.pattern ?? item.info.type) === (match.info.pattern ?? match.info.type)) {
+ if (item.info.type === match.info.type) {
respond({ sessionID: item.info.sessionID, permissionID: item.info.id, response: input.response })
}
}