docs(policy): clarify network request approval flow - #5886
Conversation
📝 WalkthroughWalkthroughThe guide now explains sandbox host access, TUI navigation to a running sandbox, Network Rules keybindings for approving or rejecting requests, and expanded walkthrough setup requirements. ChangesNetwork policy approval docs
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
🌿 Preview your docs: https://nvidia-preview-pr-5886.docs.buildwithfern.com/nemoclaw |
E2E Advisor RecommendationRequired E2E: None Full advisor summaryE2E Recommendation AdvisorBase: Required E2E
Optional E2E
New E2E recommendations
|
Vitest E2E Scenario RecommendationRequired Vitest E2E scenarios: None Full Vitest E2E advisor summaryVitest E2E Scenario AdvisorBase: Required Vitest E2E scenarios
Optional Vitest E2E scenarios
Relevant changed files
|
PR Review Advisor (Nemotron Ultra) — Changes requestedMerge posture: Do not merge yet Action checklist
Findings index
Review findings by urgency: 0 required fixes, 4 items to resolve/justify, 1 in-scope improvement
|
PR Review Advisor — No blocking findingsMerge posture: No blocking advisor findings This is an automated, non-binding review; it still expects maintainers and agents to respond to each required or warning item. Treat suggestions as current-PR improvements when they touch changed code; defer only with maintainer rationale or a linked follow-up. A human maintainer must make the final merge decision. |
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (1)
docs/network-policy/approve-network-requests.mdx (1)
94-94: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winFormat
tmuxas inline code.As per coding guidelines, "Use
codeformatting for commands, paths, flags, environment variables, file names, and literal values in documentation," and as per path instructions, "CLI commands, file paths, flags, parameter names, and values must use inlinecodeformatting."🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/network-policy/approve-network-requests.mdx` at line 94, The walkthrough text is missing inline code formatting for the tmux command. Update the documentation sentence in the approve-network-requests walkthrough so tmux is wrapped in inline code, matching the existing formatting used for NVIDIA_INFERENCE_API_KEY and other literal values in the docs.Sources: Coding guidelines, Path instructions
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/network-policy/approve-network-requests.mdx`:
- Around line 64-65: The navigation text mixes two different view names, so the
flow is unclear. Update the wording in the approval instructions to use one
exact TUI label consistently, or add the missing step that moves from the
sandbox view to the sandbox policy view before mentioning the `r` shortcut. Keep
the guidance aligned with the `Network Rules` panel and the
approve-network-requests flow.
- Around line 72-75: Update the approval-lifetime wording in the network policy
docs to match the sandbox-instance behavior described in the
enterprise-readiness docs. In the section that mentions approved endpoints and
rejected rules, change the phrasing so it reflects that approvals persist for
the sandbox instance and reset only when the sandbox is destroyed and recreated,
rather than saying they last only until the sandbox stops. Keep the surrounding
guidance about baseline policy files and policy YAML/presets intact.
- Around line 82-85: The checkout path example is inconsistent across the
network-policy docs, which can confuse readers on case-sensitive systems. Update
the `approve-network-requests.mdx` snippet to use the same repository directory
name as the earlier remote-host flow, or explicitly mark the path in the
clone-and-cd example as illustrative only. Keep the naming aligned in the
related checkout instructions so `git clone` and `cd` reference the same
directory consistently.
---
Nitpick comments:
In `@docs/network-policy/approve-network-requests.mdx`:
- Line 94: The walkthrough text is missing inline code formatting for the tmux
command. Update the documentation sentence in the approve-network-requests
walkthrough so tmux is wrapped in inline code, matching the existing formatting
used for NVIDIA_INFERENCE_API_KEY and other literal values in the docs.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 0910efe8-3a10-42e7-b510-761b1bfd5de1
📒 Files selected for processing (1)
docs/network-policy/approve-network-requests.mdx
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
Follow-up on the remaining non-blocking Nemotron Ultra suggestion ( The TUI keybindings documented here were manually verified against the current OpenShell TUI implementation in |
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/network-policy/approve-network-requests.mdx (1)
77-82: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick winUse
sandbox instanceconsistently for approval lifetime.Line 77 says the rule is added for the “current session”, but Lines 81-82 say it persists for the sandbox instance until destroy/recreate.
That can mislead readers into thinking a TUI reconnect drops the approval.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/network-policy/approve-network-requests.mdx` around lines 77 - 82, The approval lifetime wording is inconsistent in the network request guide: the `approve/reject` keybinding text in the pending-rule section says approvals apply to the “current session,” while the later note says they persist for the sandbox instance until destroy/recreate. Update the wording around the pending-rule actions and the “Approved endpoints remain…” note so it consistently uses the sandbox instance as the approval scope, and make sure the `approve-network-requests` instructions do not imply a TUI reconnect clears approved endpoints.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/network-policy/approve-network-requests.mdx`:
- Around line 106-113: The walkthrough text is too vague because
scripts/walkthrough.sh expects the sandbox alias nemoclaw, so update the
instructions in approve-network-requests.mdx to either explicitly tell readers
to onboard a sandbox named nemoclaw or clearly state they must edit the script
for a different alias. Make sure the affected Step content around the onboarding
guidance and walkthrough command matches what the script actually does.
---
Outside diff comments:
In `@docs/network-policy/approve-network-requests.mdx`:
- Around line 77-82: The approval lifetime wording is inconsistent in the
network request guide: the `approve/reject` keybinding text in the pending-rule
section says approvals apply to the “current session,” while the later note says
they persist for the sandbox instance until destroy/recreate. Update the wording
around the pending-rule actions and the “Approved endpoints remain…” note so it
consistently uses the sandbox instance as the approval scope, and make sure the
`approve-network-requests` instructions do not imply a TUI reconnect clears
approved endpoints.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 53469b49-405d-4171-a604-0682178f3656
📒 Files selected for processing (1)
docs/network-policy/approve-network-requests.mdx
| Onboard at least one sandbox and confirm that it is attached to the active gateway. | ||
| </Step> | ||
| <Step> | ||
| Run the walkthrough script from the NemoClaw repository root. | ||
|
|
||
| ```bash | ||
| ./scripts/walkthrough.sh | ||
| ``` |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
Document the required sandbox alias, or this walkthrough is not literal.
The linked scripts/walkthrough.sh connects with openshell sandbox connect nemoclaw, so “at least one onboarded sandbox” is not enough to follow these steps verbatim.
Please either tell readers to onboard a sandbox named nemoclaw or call out that they must edit the script for a different alias.
Also applies to: 117-119
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@docs/network-policy/approve-network-requests.mdx` around lines 106 - 113, The
walkthrough text is too vague because scripts/walkthrough.sh expects the sandbox
alias nemoclaw, so update the instructions in approve-network-requests.mdx to
either explicitly tell readers to onboard a sandbox named nemoclaw or clearly
state they must edit the script for a different alias. Make sure the affected
Step content around the onboarding guidance and walkthrough command matches what
the script actually does.
## Summary Adds the v0.0.69 release notes to the published release-notes page so users can see the shipped sandbox recovery, Deep Agents Code, Hermes, inference, policy, and release-validation changes. The section is based on the v0.0.69 announcement and links each user-facing theme to the deeper docs pages that already cover the behavior. ## Changes - Added a new `v0.0.69` section to `docs/about/release-notes.mdx`. - Linked release-note themes to lifecycle, backup, troubleshooting, Deep Agents Code, commands, workspace, messaging, Hermes, inference, security, monitoring, and network-policy docs. Source summary: - #5455 -> `docs/about/release-notes.mdx`: Summarized persistent workspace and state cleanup during sandbox destroy. - #5738 -> `docs/about/release-notes.mdx`: Summarized nonzero exit status preservation for failed hosted endpoint validation. - #5786 -> `docs/about/release-notes.mdx`: Summarized live sandbox rediscovery when local registry state is missing. - #5881 -> `docs/about/release-notes.mdx`: Summarized the `nemo-deepagents` alias command surface. - #5594 -> `docs/about/release-notes.mdx`: Summarized the Hermes Agent 2026.6.19 update. - #5777 -> `docs/about/release-notes.mdx`: Summarized manifest-derived messaging channel support. - #5825 -> `docs/about/release-notes.mdx`: Summarized DeepSeek V4 Flash managed-vLLM defaults for DGX Station. - #5877 -> `docs/about/release-notes.mdx`: Summarized provider switch metadata preservation. - #5932 -> `docs/about/release-notes.mdx`: Summarized transient inference smoke retry behavior. - #5934 -> `docs/about/release-notes.mdx`: Summarized constrained inference smoke retry boundaries. - #5681 -> `docs/about/release-notes.mdx`: Summarized Shields config-hash sealing during auto-restore. - #5682 -> `docs/about/release-notes.mdx`: Summarized sandbox connect process-limit enforcement. - #5683 -> `docs/about/release-notes.mdx`: Summarized JSON agent failure provenance warnings. - #5711 -> `docs/about/release-notes.mdx`: Summarized sparse-source log breadcrumbs. - #5838 -> `docs/about/release-notes.mdx`: Summarized host-authoritative Shields status. - #5880 -> `docs/about/release-notes.mdx`: Summarized policy round-trip documentation updates. - #5886 -> `docs/about/release-notes.mdx`: Summarized network request approval-flow documentation updates. ## Type of Change - [ ] Code change (feature, bug fix, or refactor) - [ ] Code change with doc updates - [x] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Quality Gates - [ ] Tests added or updated for changed behavior - [ ] Existing tests cover changed behavior — justification: - [x] Tests not applicable — justification: doc-only release-notes prose; no runtime behavior changed. - [x] Docs updated for user-facing behavior changes - [ ] Docs not applicable — justification: - [ ] Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging) - [ ] Sensitive-path review completed or maintainer-approved waiver recorded — reviewer/approval link/justification: - [ ] Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue: ## Verification - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Git hooks passed during commit and push, or `npx prek run --from-ref main --to-ref HEAD` passes - [ ] Targeted tests pass for changed behavior - [ ] Full `npm test` passes (broad runtime changes only) - [x] Quality Gates section completed with required justifications or waivers - [x] No secrets, API keys, or credentials committed - [ ] `npm run docs` builds without warnings (doc changes only) - [x] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) `npm run docs` passed with 0 errors and the existing Fern light-mode accent contrast warning. `fern check --warnings` reported the same accent-color warning. --- Signed-off-by: Miyoung Choi <miyoungc@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Added release notes for **v0.0.69**, covering improved sandbox lifecycle recovery (state preservation across destroy/recreate/rebuild/recovery/validation failures), clearer Deep Agents Code terminal/CLI behavior, and safer Hermes messaging/provider switching with manifest-driven channels. * Improved inference setup validation guidance, including handling of local/compatible endpoints and redaction of sensitive validation errors. * Refreshed release-gate documentation with clearer approval examples and validation behavior for NVIDIA API keys vs hosted inference keys. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- markdownlint-disable MD041 --> ## Summary Clarifies how operators find and act on blocked network requests in the OpenShell TUI. This updates the how-to with the sandbox selection flow, `Network Rules` keybindings, remote-host expectations, and source-checkout prerequisites for the walkthrough. ## Related Issue Fixes NVIDIA#5082 ## Changes - Documented selecting a sandbox from the TUI dashboard and opening the `Network Rules` panel. - Added the `a`, `x`, and `A` approval and rejection keybindings, including the approve-all confirmation prompt. - Clarified that the walkthrough script requires a NemoClaw source checkout, tmux, `NVIDIA_INFERENCE_API_KEY`, and an onboarded sandbox. ## Type of Change - [ ] Code change (feature, bug fix, or refactor) - [ ] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [x] Doc only (includes code sample changes) ## Quality Gates - [ ] Tests added or updated for changed behavior - [ ] Existing tests cover changed behavior — justification: - [x] Tests not applicable — justification: doc-only how-to update with no runtime behavior changes. - [x] Docs updated for user-facing behavior changes - [ ] Docs not applicable — justification: - [x] Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging) - [x] Sensitive-path review completed or maintainer-approved waiver recorded — reviewer/approval link/justification: docs-only network-policy guidance; no runtime policy, credential, sandbox, or security enforcement code changed. - [ ] Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue: ## Verification - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Git hooks passed during commit and push, or `npx prek run --from-ref main --to-ref HEAD` passes - [ ] Targeted tests pass for changed behavior - [ ] Full `npm test` passes (broad runtime changes only) - [x] Quality Gates section completed with required justifications or waivers - [x] No secrets, API keys, or credentials committed - [ ] `npm run docs` builds without warnings (doc changes only) - [x] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) Verification notes: - `npm run docs` passed with 0 errors; Fern reported 1 hidden warning plus an upgrade notice, so the "without warnings" checkbox is intentionally unchecked. - The OpenShell TUI keybindings were checked against `crates/openshell-tui/src/app.rs` and `crates/openshell-tui/src/ui/sandbox_draft.rs` in the sibling OpenShell checkout. --- Signed-off-by: Miyoung Choi <miyoungc@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Clarified prerequisites for accessing the OpenShell TUI on the host running the NemoClaw sandbox, including explicit access requirements. * Improved the “Open the TUI” remote workflow with SSH host/alias placeholders and added guidance for locating the active sandbox in the dashboard (select with `j/k`, open with `Enter`). * Rewrote the approval walkthrough to manage pending entries in the `Network Rules` panel (focus `r`, inspect `Enter`, approve/reject selected, and bulk-approve with confirmation). * Updated walkthrough script setup to clone on the sandbox host (after SSH if needed) and run `./scripts/walkthrough.sh`. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Summary Adds the v0.0.69 release notes to the published release-notes page so users can see the shipped sandbox recovery, Deep Agents Code, Hermes, inference, policy, and release-validation changes. The section is based on the v0.0.69 announcement and links each user-facing theme to the deeper docs pages that already cover the behavior. ## Changes - Added a new `v0.0.69` section to `docs/about/release-notes.mdx`. - Linked release-note themes to lifecycle, backup, troubleshooting, Deep Agents Code, commands, workspace, messaging, Hermes, inference, security, monitoring, and network-policy docs. Source summary: - NVIDIA#5455 -> `docs/about/release-notes.mdx`: Summarized persistent workspace and state cleanup during sandbox destroy. - NVIDIA#5738 -> `docs/about/release-notes.mdx`: Summarized nonzero exit status preservation for failed hosted endpoint validation. - NVIDIA#5786 -> `docs/about/release-notes.mdx`: Summarized live sandbox rediscovery when local registry state is missing. - NVIDIA#5881 -> `docs/about/release-notes.mdx`: Summarized the `nemo-deepagents` alias command surface. - NVIDIA#5594 -> `docs/about/release-notes.mdx`: Summarized the Hermes Agent 2026.6.19 update. - NVIDIA#5777 -> `docs/about/release-notes.mdx`: Summarized manifest-derived messaging channel support. - NVIDIA#5825 -> `docs/about/release-notes.mdx`: Summarized DeepSeek V4 Flash managed-vLLM defaults for DGX Station. - NVIDIA#5877 -> `docs/about/release-notes.mdx`: Summarized provider switch metadata preservation. - NVIDIA#5932 -> `docs/about/release-notes.mdx`: Summarized transient inference smoke retry behavior. - NVIDIA#5934 -> `docs/about/release-notes.mdx`: Summarized constrained inference smoke retry boundaries. - NVIDIA#5681 -> `docs/about/release-notes.mdx`: Summarized Shields config-hash sealing during auto-restore. - NVIDIA#5682 -> `docs/about/release-notes.mdx`: Summarized sandbox connect process-limit enforcement. - NVIDIA#5683 -> `docs/about/release-notes.mdx`: Summarized JSON agent failure provenance warnings. - NVIDIA#5711 -> `docs/about/release-notes.mdx`: Summarized sparse-source log breadcrumbs. - NVIDIA#5838 -> `docs/about/release-notes.mdx`: Summarized host-authoritative Shields status. - NVIDIA#5880 -> `docs/about/release-notes.mdx`: Summarized policy round-trip documentation updates. - NVIDIA#5886 -> `docs/about/release-notes.mdx`: Summarized network request approval-flow documentation updates. ## Type of Change - [ ] Code change (feature, bug fix, or refactor) - [ ] Code change with doc updates - [x] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Quality Gates - [ ] Tests added or updated for changed behavior - [ ] Existing tests cover changed behavior — justification: - [x] Tests not applicable — justification: doc-only release-notes prose; no runtime behavior changed. - [x] Docs updated for user-facing behavior changes - [ ] Docs not applicable — justification: - [ ] Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging) - [ ] Sensitive-path review completed or maintainer-approved waiver recorded — reviewer/approval link/justification: - [ ] Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue: ## Verification - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Git hooks passed during commit and push, or `npx prek run --from-ref main --to-ref HEAD` passes - [ ] Targeted tests pass for changed behavior - [ ] Full `npm test` passes (broad runtime changes only) - [x] Quality Gates section completed with required justifications or waivers - [x] No secrets, API keys, or credentials committed - [ ] `npm run docs` builds without warnings (doc changes only) - [x] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) `npm run docs` passed with 0 errors and the existing Fern light-mode accent contrast warning. `fern check --warnings` reported the same accent-color warning. --- Signed-off-by: Miyoung Choi <miyoungc@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Added release notes for **v0.0.69**, covering improved sandbox lifecycle recovery (state preservation across destroy/recreate/rebuild/recovery/validation failures), clearer Deep Agents Code terminal/CLI behavior, and safer Hermes messaging/provider switching with manifest-driven channels. * Improved inference setup validation guidance, including handling of local/compatible endpoints and redaction of sensitive validation errors. * Refreshed release-gate documentation with clearer approval examples and validation behavior for NVIDIA API keys vs hosted inference keys. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Summary
Clarifies how operators find and act on blocked network requests in the OpenShell TUI.
This updates the how-to with the sandbox selection flow,
Network Ruleskeybindings, remote-host expectations, and source-checkout prerequisites for the walkthrough.Related Issue
Fixes #5082
Changes
Network Rulespanel.a,x, andAapproval and rejection keybindings, including the approve-all confirmation prompt.NVIDIA_INFERENCE_API_KEY, and an onboarded sandbox.Type of Change
Quality Gates
Verification
Verifiedin GitHubnpx prek run --from-ref main --to-ref HEADpassesnpm testpasses (broad runtime changes only)npm run docsbuilds without warnings (doc changes only)Verification notes:
npm run docspassed with 0 errors; Fern reported 1 hidden warning plus an upgrade notice, so the "without warnings" checkbox is intentionally unchecked.crates/openshell-tui/src/app.rsandcrates/openshell-tui/src/ui/sandbox_draft.rsin the sibling OpenShell checkout.Signed-off-by: Miyoung Choi miyoungc@nvidia.com
Summary by CodeRabbit
j/k, open withEnter).Network Rulespanel (focusr, inspectEnter, approve/reject selected, and bulk-approve with confirmation)../scripts/walkthrough.sh.