Skip to content

Unify permission verdict path with a mode-invariant catastrophic deny - #1037

Merged
TheGreatAxios merged 2 commits into
mainfrom
cl-7950-unify-permission-verdict-path-and-single-owner-shell-policy
Sep 14, 2026
Merged

TheGreatAxios merged 2 commits into
mainfrom
cl-7950-unify-permission-verdict-path-and-single-owner-shell-policy

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Collaborator

Summary: Single verdict path through decide() with the catastrophic shell deny above the skipPermissions shortcut (strictly narrows allows, no widening); grant evaluation unified on approvalCoversSubject (byte-identical delegation); pass-through authz plugin deleted with chain ordering preserved. Verification: scoped permission/plugins/shell suites 1154/0, agent-tools suite 22/0, typecheck clean; independent review found no allow-widening. Fixes CL-7950

Move the catastrophic shell deny to the top of the gate's single verdict path so every entry denies before auto-allow, prompting, grants, and skipPermissions; the gate becomes the sole enforcement owner, the authz plugin is removed, and grant coverage routes through one function. Scoped suite passes 1132/0 with typecheck clean.
@linear-code

linear-code Bot commented Sep 14, 2026

Copy link
Copy Markdown

CL-7950

@TheGreatAxios
TheGreatAxios merged commit af62702 into main Sep 14, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant