ci / vet-and-test (pull_request) Successful in 43s
Why: The sandbox tier wrote the session directory directly, so a buggy or runaway script could leave the workspace half-mutated and nothing bounded what a timeout had already written. The plan's first landing shape (section 4.4) swaps the session bind for a frozen-base overlay: each exec freezes the session dir (hardlink clone + sha256 baseline), runs on a private upper, and only a clean exit promotes the change set back via CAS (baseline hash match -> atomic replace/remove; externally changed targets double-store as *.conflict-* instead of clobbering). Timeouts and kills discard the upper entirely - half-written state never lands. Evidence: go test ./... green including bwrap integration roundtrips (TestSandboxWorkspaceOverlayRoundtrip: add/modify/delete through a real overlayfs upper with whiteout handling and ws cleanup; TestSandboxWorkspaceOverlayTimeoutDiscards: partial writes discarded on timeout) and unit anchors for freeze manifest (.agentx excluded), CAS add/modify, conflict double-store, and the change summary. Impact: Opt-in via --exec-workspace overlay / AGENT_SYSTEM_EXEC_WORKSPACE (only with --exec-backend sandbox; fail-closed on unknown modes). The model sees a one-line change summary appended to the tool output, so discards and conflict files are visible. Default behavior is unchanged. Refs: proposal 2026-10-10-agent-delegation-routing-sandbox.md section 4.4; Dev task feature/agent-s0-workspace-overlay.