fix(policy): allow uv in pypi preset#3368
Conversation
|
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)
📝 WalkthroughWalkthroughThe PyPI network preset configuration is updated to authorize the ChangesPyPI Preset Update
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Tip 💬 Introducing Slack Agent: The best way for teams to turn conversations into code.Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.
Built for teams:
One agent for your entire SDLC. Right inside Slack. Comment |
|
@pandas-studio can you add a DCO, please? |
|
Opened signed-off replacement PR #4569 with the same one-line policy change. This avoids rewriting the contributor branch to satisfy DCO. |
## Summary Adds `/usr/local/bin/uv` to the PyPI network preset binary allowlist so sandboxes using the `pypi` preset can run the `uv` package manager directly. This is a clean signed-off replacement for the blocked contributor PR #3368, whose code change was sound but whose branch cannot pass DCO without rewriting existing commits. ## Related Issue Supersedes #3368. ## Changes - Updates `nemoclaw-blueprint/policies/presets/pypi.yaml` to allow `/usr/local/bin/uv` alongside the existing Python and pip binaries. ## Type of Change - [x] Code change (feature, bug fix, or refactor) - [ ] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Verification - [ ] `npx prek run --all-files` passes - [ ] `npm test` passes - [ ] Tests added or updated for new or changed behavior - [x] No secrets, API keys, or credentials committed - [ ] Docs updated for user-facing behavior changes - [ ] `npm run docs` builds without warnings (doc changes only) - [ ] 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) Targeted validation run: `npm test -- test/policies.test.ts test/policy-tiers.test.ts test/validate-blueprint.test.ts`. The relevant policy YAML checks passed, while `test/policies.test.ts` currently has unrelated failures on current `origin/main` around missing policy helper exports and openshell resolution behavior. --- <!-- DCO sign-off required by CI. Run: git config user.name && git config user.email --> Signed-off-by: Carlos Villela <cvillela@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated PyPI preset policy configuration to allow an additional binary tool in the allowlist. <!-- review_stack_entry_start --> [](https://app.coderabbit.ai/change-stack/NVIDIA/NemoClaw/pull/4569?utm_source=github_walkthrough&utm_medium=github&utm_campaign=change_stack) <!-- review_stack_entry_end --> <!-- end of auto-generated comment: release notes by coderabbit.ai --> Signed-off-by: Carlos Villela <cvillela@nvidia.com> Co-authored-by: cjagwani <cjagwani@nvidia.com>
|
Closing this because the same one-line policy change was salvaged in signed-off replacement PR #4569, which merged on 2026-06-01 with DCO passing. Thanks again for the original contribution. |
Summary
/usr/local/bin/uvto the pypi preset's allowed binaries so sandboxes using thepypinetwork preset can runuvdirectly.python3/pipunder/usr/binand/usr/local/binand complements the/sandbox/.uv/...paths already present.Motivation
The pypi preset already allows
python3andpipfrom/usr/local/bin, and references/sandbox/.uv/python/**/python*, butuvitself was missing. Sandboxes that installuvto/usr/local/bin/uv(per theuv_installoperational note: symlinks into/root/are unreachable, so the binary is copied to/usr/local/bin) were blocked from invoking it under this preset.Test plan
make checkpasses (policy YAML lint)pypipreset in a sandbox, runuv --versionand auv pip install— both should be permitted🤖 Generated with Claude Code
Summary by CodeRabbit
Release Notes
uvpackage manager alongside existing Python tooling.