NVIDIA / NVIDIA/OpenShell

fix(policy): support legitimate CDI policies above 256 paths

Open
#3,349 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

state:triage-needed
Dominant language
Rust
Stars
8.7k
Forks
1.3k
Avg merge
2d 11h
Merged PRs (30d)
253

Description

Problem

The native Docker CDI policy-enrichment path produced 301 filesystem paths for the NVIDIA Jetson AGX Thor qualification device, exceeding OpenShell's current 256-path policy limit before NemoClaw onboarding could complete.

The validation stack was #1606 through #2775, #2776, #2265, and #2846. A local 512-path change allowed qualification to proceed, but a blind limit increase is not a reviewed production solution: OpenShell must preserve a bounded, fail-closed policy while supporting legitimate CDI specifications.

Expected behavior

A legitimate selected Jetson CDI device can enrich the effective sandbox policy without exceeding an implementation-only ceiling. Duplicate or structurally redundant paths are normalized where safe. Excessive, malformed, conflicting, or adversarial requirements still fail closed with a diagnostic that reports the observed count and supported bound without dumping sensitive host metadata.

Acceptance

  • Reproduce the 301-path AGX Thor CDI policy using a hardware-free fixture shaped from non-secret path metadata.
  • Determine whether safe normalization/deduplication reduces the effective set; preserve distinct permissions and mount/device semantics.
  • Define and document a bounded capacity that covers supported CDI devices, or replace the fixed entry ceiling with a resource limit tied to the actual policy representation.
  • Add boundary tests at the accepted maximum, one above it, duplicate paths, conflicting access modes, and maliciously large input.
  • Keep non-GPU sandbox policy and resource use unchanged.
  • On the exact released OpenShell build, run the official ARM64 NemoClaw image through full AGX Thor and IGX Orin onboarding with exit 0 and no qualification-only limit patch.
  • Re-run restart, resume, rebuild, non-GPU negative, and invalid/missing CDI fail-closed cases.

Current evidence

  • NVIDIA/OpenShell#2846#issuecomment-5684128551 records the 301-path failure and local 512-path qualification change.
  • NVIDIA/NemoClaw#8910#issuecomment-5684731268 records the accepted downstream ownership and release-gated validation contract.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the 301-path NVIDIA Jetson AGX Thor CDI policy with a hardware-free fixture based on the issue's non-secret path metadata, then investigate safe normalization while preserving permissions and mount/device semantics. Add boundary, duplicate, conflict, oversized-input, and fail-closed coverage. Done requires a bounded policy decision, documentation, and successful exact-build ARM64 NemoClaw validation on AGX Thor and IGX Orin plus the listed restart, resume, rebuild, and negative cases.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, rust
Domain
devops, security
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.