fix(athena): add call_omo_agent to ATHENA_RESTRICTIONS for consistent tool denial

ATHENA_RESTRICTIONS only denied write and edit, missing call_omo_agent that the agent factory already denies. This caused 6 callers of getAgentToolRestrictions() to get incomplete restrictions.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
ismeth 2026-02-19 13:53:11 +01:00 committed by YeonGyu-Kim
parent 8db2648339
commit 74e519e545
2 changed files with 34 additions and 1 deletions

View File

@ -0,0 +1,33 @@
import { describe, expect, test } from "bun:test"
import {
getAgentToolRestrictions,
hasAgentToolRestrictions,
} from "./agent-tool-restrictions"
describe("agent-tool-restrictions", () => {
test("athena restrictions include call_omo_agent", () => {
//#given
//#when
const restrictions = getAgentToolRestrictions("athena")
//#then
expect(restrictions.write).toBe(false)
expect(restrictions.edit).toBe(false)
expect(restrictions.call_omo_agent).toBe(false)
})
test("council-member restrictions include call_omo_agent", () => {
//#given
//#when
const restrictions = getAgentToolRestrictions("council-member")
//#then
expect(restrictions.call_omo_agent).toBe(false)
})
test("hasAgentToolRestrictions returns true for athena", () => {
//#given
//#when
const result = hasAgentToolRestrictions("athena")
//#then
expect(result).toBe(true)
})
})

View File

@ -14,7 +14,7 @@ const EXPLORATION_AGENT_DENYLIST: Record<string, boolean> = {
}
const ATHENA_RESTRICTIONS = permissionToToolBooleans(
createAgentToolRestrictions(["write", "edit"]).permission
createAgentToolRestrictions(["write", "edit", "call_omo_agent"]).permission
)
const AGENT_RESTRICTIONS: Record<string, Record<string, boolean>> = {