Skip to content

Enforce AMS sandbox network-egress deny-by-default + allowlist (implements #7648) #7857

Description

@JSONbored

Problem

#7648 ratified AMS's sandboxed execution environments to deny-by-default network egress with a curated allowlist (OS package registries, the target repo's own git remote, the repo's declared language-ecosystem registries). No enforcement mechanism exists yet — AMS's execution sandboxing (packages/loopover-engine/src/miner/worktree-pool.ts) is code/filesystem isolation only; nothing restricts network access from inside an attempt.

Area

packages/loopover-engine/src/miner/worktree-pool.ts and wherever the actual coding-agent subprocess is launched (self-host today; also the future hosted-AMS execution path once #7180's container work lands).

Proposal

Enforce #7648's ratified default at the point an attempt's sandbox spins up: deny all outbound network access by default, punch through only the ratified allowlist categories (OS package registries, the repo's own git remote, its declared package-ecosystem registries), and provide the per-repo allowlist-extension request path #7648 deferred (pin down the actual review-gate mechanism as part of this issue, rather than inventing one). Follow the same "not a complete solution alone" caveat #7648 cites from Codex/Copilot's own docs — pair this with not assuming egress control alone stops exfiltration (output-channel vectors like auto-rendered remote content bypass it regardless of how tight the allowlist is).

Deliverables

  • Egress enforcement wired into wherever the sandbox subprocess launches, deny-by-default.
  • The ratified default allowlist implemented and configurable per repo.
  • A concrete, working allowlist-extension request path (with the review-gate identified, not assumed).
  • Tests: a disallowed outbound request from inside a sandbox is blocked; an allowlisted one succeeds; a repo-specific addition takes effect.

Resources

Boundaries

Egress enforcement only — does not address other agent-safety concerns (output-channel exfiltration, prompt injection), out of scope for this issue.

maintainer-only — security-critical sandbox enforcement, not a first-pass contributor task.

Metadata

Metadata

Assignees

Labels

maintainer-onlyOwner-only work — yields no Gittensor points.roadmapOn the Wave-2 agent-layer roadmap board (project 9)

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions