feat!: remove the namespace sandbox #288
No reviewers
Labels
No labels
burndown-2026-06
sunday-sprint
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
coherence-core
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
qa-fixture
role/ai
role/creator
role/design
role/director
role/engineer
role/exec
role/human
role/ops
role/qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-flight-deck/umbra!288
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/remove-sandbox"
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?
Closes #256. Closes #277. Supersedes #287.
The jail was built when ward ran host-native. ward is containerized now, and its own
container_bootstrap.goturns the jail off with the comment "The container is the isolation boundary". The premise is gone.What the jail actually was in practice
//go:build linux, so the Mac and Windows machines never had it - andward execis the documented workflow on both.ward execon amakeverb failing outright on a root-owned/usr/bin/make. #277 has Ubuntu 24.04's apparmor denying the userns. Both issues list the same remedy: the opt-out env.So the population where it engaged was: Linux hosts, not Ubuntu 24.04, with user-owned tool binaries, that hadn't set the opt-out. Close to empty.
It was a liability, not just dead weight
SECURITY.mdadvertised jail escapes as a reportable vulnerability class - grandchild gate routing, seccomp denylist, namespace confinement - and said "a passing test that does not actually hold is itself a vulnerability." Meanwhile #256 sat open against that exact surface while the control was disabled nearly everywhere. Promising a boundary that is switched off is worse than not promising it.What goes
cli/sandbox(1192 lines, seccomp included), its wiring incli/shell,docs/sandbox.md, and the SECURITY.md claim. -1146 lines.With it go every
CLIGUARD_env var:NO_SANDBOX,JAILED,REALBIN_. The config fallback token follows for consistency:CLI_GUARD->UMBRA, andFallbackAppDir".cli-guard"->".umbra".Operator note
That last rename moves the app dir for any consumer that never calls
config.SetAppDir. AOSguard is one, so its audit log moves from~/.cli-guard/audit/<repo-slug>.jsonlto~/.umbra/audit/. Existing history is not migrated - runmv ~/.cli-guard ~/.umbraif it should carry over.Verification
Full gate green on darwin (
build,vet,tidy,test,lint0 issues) and the whole suite green on linux in Docker, which is where the deleted code actually lived.On #287
I opened #287 an hour ago to make this same jail degrade gracefully on the mode-2 denial. It works and is verified, but it is polish on something being deleted - close it unmerged. Same for #256, which this removes rather than fixes.
The fleet's 34 declarations come out next, once this releases.