fix(cli): preserve healthy Docker authority - #8823
Conversation
|
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. |
|
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 (5)
🚧 Files skipped from review as they are similar to previous changes (5)
📝 WalkthroughWalkthroughDocker host detection now probes the CLI default authority and validates Docker or Podman identity before selecting socket fallbacks. Runner environments preserve or clear Docker context settings by command type. Tests cover mixed runtimes, explicit hosts, unknown identities, readiness, profile compatibility, and probe filtering. ChangesDocker authority detection
Estimated code review effort: 4 (Complex) | ~45 minutes Sequence Diagram(s)sequenceDiagram
participant NemoClaw
participant DockerCLI
participant SocketCandidates
participant Readiness
NemoClaw->>DockerCLI: Probe default docker version authority
DockerCLI-->>NemoClaw: Return reachability and server identity
NemoClaw->>SocketCandidates: Probe fallback sockets when required
SocketCandidates-->>NemoClaw: Return validated endpoint identity
NemoClaw->>Readiness: Project selected runtime
Readiness-->>NemoClaw: Resolve Docker-only profile compatibility
Possibly related PRs
Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Comment |
Code Coverage OverviewLanguages: TypeScript TypeScript / code-coverage/pluginThe overall coverage in commit 982a17d in the TypeScript / code-coverage/cliThe overall coverage in commit 982a17d in the Show a code coverage summary of the most impacted files.
Updated |
|
🌿 Preview your docs: https://nvidia-preview-pr-8823.docs.buildwithfern.com/nemoclaw |
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
PR Review Advisor — No blocking findings reportedAdvisor assessment: No blocking advisor findings reported Model lanes
Second-opinion terminology and E2E selections are advisory. Live E2E does not run automatically for pull requests. 3 semantic terminology decisionsTerminology decisions are advisory. They affect the assessment only when a separate finding identifies concrete semantic impact.
E2E guidanceAdvisory only. A maintainer can dispatch the default E2E suite for the commit under review. Recommended E2E: None Manual-only E2E: This automated review informs maintainers. Warnings and suggestions do not require a response. A maintainer decides whether to merge. |
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Summary
NemoClaw now preserves a reachable Docker CLI default, including a custom
DOCKER_CONFIG, whenDOCKER_HOSTis unset instead of replacing it with the first existing socket.If the default is unreachable, the CLI probes only its bounded local-socket candidates and selects a fallback only when server-version evidence identifies one runtime.
Related Issue
Fixes #8816
Changes
DOCKER_HOSTwithout probing or replacing its authority.DOCKER_CONTEXTand itsDOCKER_CONFIGdirectory for Docker commands, and clear the context only when a verified socket fallback must take precedence.Type of Change
Quality Gates
DOCKER_CONTEXTand itsDOCKER_CONFIGpath; fallback probes and host overrides omit both; selecting a verified fallback clears the conflicting context; and non-Docker commands receive neither value. Regression coverage confirmsNVIDIA_INFERENCE_API_KEYremains filtered at both boundaries. The maintainer explicitly approved this Docker-only configuration boundary.Documentation Writer Review
docs-updateddocs/reference/system-readiness.mdxdocuments Docker default-authority selection withDOCKER_CONTEXTandDOCKER_CONFIG, verified local socket fallback, and conflicting context removal.DGX Station Hardware Evidence
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 unavailableupstream/main.npm testfor broad runtime/test-harness changes;npm run checkfor repo-wide validation/coverage changes — command/result: Not required for this focused CLI change.npm run docsbuilds without warnings (doc changes only) — result: the build passed; Fern reported two baseline warnings that it suppresses unless run with--warnings.Signed-off-by: Prekshi Vyas prekshiv@nvidia.com
Summary by CodeRabbit
Enhancements
Documentation