fix(uninstall): delete the scoped sandbox before removing its unit (#8220) - #8259
fix(uninstall): delete the scoped sandbox before removing its unit (#8220)#8259harjothkhara wants to merge 12 commits into
Conversation
…VIDIA#8220) Signed-off-by: harjoth <harjoth.khara@gmail.com>
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughGateway-scoped uninstall now deletes OpenShell resources before removing the managed Linux service. Tests cover cleanup ordering, Docker cleanup, service removal, and failure handling. Documentation describes partial cleanup and retry guidance. ChangesGateway-scoped uninstall
Estimated code review effort: 2 (Simple) | ~10 minutes Sequence Diagram(s)sequenceDiagram
participant Uninstall as Uninstall run plan
participant OpenShell
participant Docker
participant Systemd as Managed Linux service
Uninstall->>OpenShell: Delete selected sandbox resources
OpenShell->>Docker: Remove sandbox container
OpenShell-->>Uninstall: Report cleanup result
Uninstall->>Systemd: Remove managed service
Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
PR Review Advisor — No blocking findings reportedAdvisor assessment: No blocking advisor findings reported Model lanes
1 additional E2E selection from the second opinionAdvisory only. The primary lane did not select these E2E jobs or targets.
Second-opinion terminology and E2E selections are advisory. They do not change the primary assessment or E2E / PR Gate. 3 semantic terminology decisionsTerminology decisions are advisory. They affect the assessment only when a separate finding identifies concrete semantic impact.
E2E guidanceAdvisory only. E2E / PR Gate selects and runs jobs independently. Recommended E2E: None 2 optional E2E recommendations
1 warning · 0 suggestionsWarningsWarnings do not block.
|
…#8220) Signed-off-by: harjoth <harjoth.khara@gmail.com>
…ure (NVIDIA#8220) Signed-off-by: harjoth <harjoth.khara@gmail.com>
|
✨ Thanks for the fix. This resolves the regression where scoped uninstall stranded the sandbox container and exited 1. Related open issues: Related open PRs: Related open issues: |
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
|
The current CI failures are classified:
A signed, locally validated CI-only fix is prepared to reduce these limits in
GitHub authorization currently prevents publishing that commit to the contributor branch. The branch owner or a maintainer with working contributor-fork authorization must apply those three mechanical reductions. I will resume CI monitoring once the branch is updated. |
Summary
A gateway-scoped
nemoclaw uninstallremoved the selected gateway's marked Linux unit before using that gateway's OpenShell gateway service to delete its sandbox. When deletion failed, later cleanup did not run and the sandbox container remained. This change deletes the selected gateway's OpenShell resources first and removes the marked Linux unit only after cleanup succeeds. Full uninstall behavior is unchanged.Related Issue
Fixes #8220
Changes
Stopping servicestoOpenShell resources, after selected-sandbox cleanup succeeds.--keep-openshell, and external-supervision checks shared by full and gateway-scoped cleanup.Type of Change
Quality Gates
05294e7f5191bc7cb04950dfa827d29a24729d56against current main3a39ff352f98c4630ab8e18b83f4ec43ac56a2ccpassed all nine security categories. The change reuses validated gateway selection, retains the existing cleanup guards, and does not change credentials, dependencies, network policy, or authorization.Documentation Writer Review
docs-updateddocs/manage-sandboxes/uninstall-nemoclaw.mdxanddocs/reference/commands.mdxaccurately describe the cleanup order, possible partial completion, preserved service state, and retry steps. The implementation comment and regression titles state the behavior directly. No unrelated documentation changed.DGX Station Hardware Evidence
Security Review
PASS; no findings in the nine required categories.05294e7f5191bc7cb04950dfa827d29a24729d56.3a39ff352f98c4630ab8e18b83f4ec43ac56a2cc.Verification
Signed-off-by:line and every commit appears asVerifiedin GitHubpre-commit,commit-msg, andpre-pushhooks passed, ornpm run validate:prpassed after refreshingorigin/mainwhen hooks were skipped or unavailable — normal commit hooks passed. The linked worktree does not contain the generateddist/files required bypre-push; GitHub Actions is the validation authority.npm testfor broad runtime/test-harness changes;npm run checkfor repo-wide validation/coverage changes — not applicable to this bounded uninstall ordering fix.npm run docsbuilds without warnings (doc changes only) — pending GitHub Actions documentation checks.Signed-off-by: harjoth harjoth.khara@gmail.com
Summary by CodeRabbit
Bug Fixes
Documentation