refactor(hooks): split gateguard gate and classifiers into smaller units

gate() handled Edit, MultiEdit and shell in one 220-line function. It now builds a small context and dispatches to gateSingleEdit, gateMultiEdit and gateShell, with the first-touch, sibling-collapse and routine/destructive shell steps as their own functions. isDestructiveGit and isReadOnlyGitIntrospection became subcommand tables; unwrapLeadWrappers got one handler per wrapper; ddLauncherCommandIndex, isDestructiveFindExec and sanitizePath lost their inline option and code point ladders. condensedGateMsg takes an options object instead of seven positional parameters.

Decision order, recorded metrics reasons, state keys and every denial message are unchanged, and the module exports are the same.
This commit is contained in:
Affaan Mustafa
2026-10-19 22:03:57 -04:00
committed by Affaan Mustafa
parent cfcd81c076
commit 7b1756670f
File diff suppressed because it is too large Load Diff