fix(cli): stop overstating workspace durability on sandbox stop#7283
fix(cli): stop overstating workspace durability on sandbox stop#7283Dongni-Yang wants to merge 1 commit into
Conversation
`nemoclaw <sandbox> stop` printed "Workspace state is preserved" unconditionally after `docker stop` succeeded. `start` is a direct `docker start` of the same container, and the sandbox /sandbox workspace lives on an OpenShell-owned PVC whose re-attachment NemoClaw does not control, so the message promised a durability guarantee it cannot make (#7199). Reword to state only what stop guarantees — the sandbox stays registered for a later `start` — and guard the #6026 test against the old absolute claim regressing. Refs #7199 Signed-off-by: Dongni Yang <dongniy@nvidia.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
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 (2)
📝 WalkthroughWalkthroughThe sandbox stop action now reports that the sandbox remains registered for restart instead of claiming workspace-state preservation. Its test verifies the updated message and absence of the previous wording. ChangesSandbox stop messaging
Estimated code review effort: 1 (Trivial) | ~2 minutes Suggested labels: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
PR Review Advisor — InformationalAdvisor assessment: Informational / high confidence Model lanes
Nemotron output stays in workflow artifacts and does not change the assessment above. E2E guidanceAdvisory only. E2E / PR Gate selects and runs jobs independently. Recommended E2E: 1 optional E2E recommendation
This automated review informs maintainers. Warnings and suggestions do not require a response. A maintainer decides whether to merge. |
Code Coverage OverviewLanguages: TypeScript TypeScript / code-coverage/pluginThe overall coverage in commit b56cf38 in the TypeScript / code-coverage/cliThe overall coverage in commit b56cf38 in the Show a code coverage summary of the most impacted files.
Updated |
|
This PR changes only
The same check is currently red on unrelated open PRs (#7284, #7278) and passed on #7280 before these advisories landed, which indicates repo-wide supply-chain state rather than anything introduced here. |
Summary
nemoclaw <sandbox> stopprintedWorkspace state is preserved.unconditionally wheneverdocker stopreturned 0, promising a workspace-durability guarantee it cannot make:startis a directdocker startof the same container, and the sandbox/sandboxworkspace lives on an OpenShell-owned PVC whose re-attachment on restart NemoClaw does not control (#7199). After the change,stopstates only what it guarantees — the sandbox stays registered for a laterstart— and no longer promises workspace-data preservation.Related Issue
Refs #7199 — this is the message-honesty slice only. Per the issue's triage, the actual workspace data-loss root cause is upstream OpenShell PVC re-attachment on a direct docker start and is being escalated there; this PR intentionally does not claim to fix that, so it uses
Refsrather thanFixes/Closes.Changes
src/lib/actions/sandbox/stop.ts: reword the post-stop message fromWorkspace state is preserved.toThe sandbox stays registered for restart., with a comment explaining why no workspace-durability promise is made here.src/lib/actions/sandbox/stop.test.ts: the [All Platforms][CLI&UX] nemoclaw sandbox has no stop or pause command — only destroy is available #6026 test now asserts the honest message and adds a guard that the old absolute claim never regresses. No new abstraction, config, or fallback introduced.Type of Change
Quality Gates
stop.tsand its test mention it (verified repo-wide).Verification
Signed-off-by:line and every commit appears asVerifiedin GitHubpre-commit,commit-msg, andpre-pushhooks passed, ornpm run check:diffpassed when hooks were skipped or unavailablenpx vitest run --project cli src/lib/actions/sandbox/stop.test.ts→ 18/18 passed;npm run test:changed→ 40/40 passednpm testfor broad runtime/test-harness changes;npm run checkfor repo-wide validation/coverage changes — command/result: not applicable (single user-facing string + its test; no runtime/harness or repo-wide validation change)npm run docsbuilds without warnings (doc changes only)Signed-off-by: Dongni Yang dongniy@nvidia.com
Summary by CodeRabbit