Deny-by-structure foundation: shim generator + sudo-floor doctor #80
Labels
No labels
burndown-2026-06
sunday-sprint
coherence-core
consult
headless
interactive
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
coilyco-flight-deck/cli-guard#80
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Foundation slice of #79 (deny-by-structure engine). The engine half of #79 already landed on
mainout-of-band (repocfg.Security,hook.Protectedbasename-deny,hookcfg.ProtectedFor,cmd/cli-guard-hook). This issue tracks the two remaining foundation pieces.Scope
[]hook.Protected(the same set the PreToolUse engine denies, viahookcfg.ProtectedFor) into one deny shim per binary. POSIX-sh, single-quote-escaped,sh -nvalidated, sorted + deduped by basename. UX layer, not enforcement.repocfg.Security- no passwordless sudo (sudo.forbid_passwordless), real binary not agent-executable (expected_real_paths), credential env absent (credential_env). InjectableProbes; build-tagged unix exec-bit check.docs/deny-by-structure.mdboundary-honesty walkthrough (shim is UX, sudo/ownership floor is enforcement); FEATURES + features-detail entries; regeneratedgodoc-current.txt.Out of scope (stays on #79)
claudeCodeRenderHookScriptdeny-prefix case).lockdown/defaults.yaml.Acceptance
shim.For([]hook.Protected)returnssh -n-valid deny shims, table-tested.doctor.Check(repocfg.Security, Probes)returns the three posture findings, table-tested.make build/make test/make lint/go vetgreen; pre-commit clean.