fix(opencode): let subagents use their own permissions (#31696)
This commit is contained in:
@@ -85,6 +85,35 @@ it.instance("plan agent denies edits except .opencode/plans/*", () =>
|
||||
}),
|
||||
)
|
||||
|
||||
it.instance("plan agent denies the general subagent by default", () =>
|
||||
Effect.gen(function* () {
|
||||
const plan = yield* load((svc) => svc.get("plan"))
|
||||
expect(plan).toBeDefined()
|
||||
expect(Permission.evaluate("task", "general", plan!.permission).action).toBe("deny")
|
||||
expect(Permission.evaluate("task", "explore", plan!.permission).action).toBe("allow")
|
||||
expect(Permission.evaluate("task", "custom", plan!.permission).action).toBe("allow")
|
||||
}),
|
||||
)
|
||||
|
||||
it.instance(
|
||||
"user permission can allow the general subagent from plan mode",
|
||||
() =>
|
||||
Effect.gen(function* () {
|
||||
const plan = yield* load((svc) => svc.get("plan"))
|
||||
expect(plan).toBeDefined()
|
||||
expect(Permission.evaluate("task", "general", plan!.permission).action).toBe("allow")
|
||||
}),
|
||||
{
|
||||
config: {
|
||||
permission: {
|
||||
task: {
|
||||
general: "allow",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
)
|
||||
|
||||
it.instance("explore agent denies edit and write", () =>
|
||||
Effect.gen(function* () {
|
||||
const explore = yield* load((svc) => svc.get("explore"))
|
||||
|
||||
Reference in New Issue
Block a user