John Myers 12dd00e666 fix(sandbox): emit structured CONNECT deny log for inference interception failures (!60)
> **🏗️ build-from-issue-agent**

Closes #82

## Summary
When OPA returns `inspect_for_inference`, the proxy now emits a second structured CONNECT log with `action=deny` when the connection is ultimately rejected. This restores operator visibility into inference interception denials (TLS handshake failure, non-inference request, client disconnect, payload too large, I/O error).

## Changes Made
- `crates/navigator-sandbox/src/proxy.rs`: Added `InferenceOutcome` enum (`Routed` / `Denied { reason }`), refactored `handle_inference_interception` to return it, updated `route_inference_request` to return `Result<bool>`, added structured CONNECT deny log emission at the call site in `handle_tcp_connection`
- `architecture/sandbox.md`: Documented the two-log pattern, `InferenceOutcome` enum, and updated error handling table

## Deviations from Plan
None — implemented as planned

## Tests Added
- **Unit:** N/A — changes involve TLS+proxy interactions not practical to unit test in isolation
- **Integration:** N/A
- **E2E:** Existing 134 tests all pass; inference routing correctness covered by existing suite

## Documentation Updated
- `architecture/sandbox.md`: Updated inference interception section, error handling table, and logging section

## Verification
- [x] All tests passing (134/134)
- [x] Pre-commit checks passing (fmt, clippy, tests)
- [x] Architecture documentation updated
2026-02-25 16:43:12 -08:00

Navigator 🗺️

Navigator is the runtime environment for autonomous agents—the "Matrix" where they live, work, and verify.

While coding tools like Claude help agents write logic, Navigator provides the infrastructure to run it, offering a programmable factory where agents can spin up physics simulations to master tasks, generate synthetic data to fix edge cases, and safely iterate through thousands of failures in isolated sandboxes.

It transforms the data center from a static deployment target into a continuous verification engine, allowing agents to autonomously build and operate complex systems—from physical robotics to self-healing infrastructure—without needing a human to manage the infrastructure.

Quickstart

Prerequisites

  • Docker — Docker Desktop (or a Docker daemon) must be running.
  • Python 3.12+ and uv

Install

uv pip install navigator --upgrade --pre --index-url https://urm.nvidia.com/artifactory/api/pypi/nv-shared-pypi/simple

The navigator binary is installed into your Python environment. Use uv run navigator to invoke it, or activate your venv first (source .venv/bin/activate).

Create a sandbox

uv run navigator sandbox create -- claude  # or opencode or codex

The sandbox container includes a minimal networking toolset by default: ping, dig, nslookup, nc, traceroute, and netstat.

Developing

See CONTRIBUTING.md for building from source and contributing to Navigator.

Architecture

See architecture/ for detailed architecture docs and design decisions.

S
Description
GitHub Trending: NVIDIA/OpenShell
Readme Apache-2.0
248 MiB
Languages
Rust 87.6%
Go 4.6%
Shell 3.2%
Python 2.4%
TypeScript 0.9%
Other 1%