fix(customizer): disable RL/DPO backend pending nmp-rl-training CVE r…#869
Conversation
|
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:
📝 WalkthroughWalkthroughChangesCustomization scope reduction
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 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 `@plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/SKILL.md`:
- Around line 48-49: Insert a blank line between the backend comparison table
and the following “nemo-customizer” paragraph in SKILL.md, ensuring the
paragraph is rendered as normal Markdown text rather than as another table row.
- Around line 354-356: Split the merged table entries into separate rows in the
documentation table: keep the troubleshooting/job fixture row ending after the
minimal automodel and unsloth fixture entries, then add a distinct Live JSON
schema row; likewise separate the minimal unsloth fixture row from the
integrations fixture row. Preserve the existing values and table column
structure.
🪄 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: bf7a103c-ca9d-482d-a0a4-ada42fa9ba2f
📒 Files selected for processing (19)
docs/customizer/tutorials/dpo-customization-job.ipynbdocs/customizer/tutorials/dpo-customization-job.mdxdocs/fern/components/NotebookViewer.tsxdocs/fern/components/notebooks/dpo-customization-job.jsondocs/fern/components/notebooks/dpo-customization-job.tsdocs/fern/scripts/validate-notebook-viewer.mjsdocs/troubleshooting/customizer.mdxplugins/nemo-customizer/openapi/openapi.yamlplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/SKILL.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/dataset-formats.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hf-conversion.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters-rl.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/integrations-setup.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/reporting.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/rl-kubernetes-runtime.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/troubleshooting.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/tests.jsonplugins/nemo-rl/pyproject.toml
💤 Files with no reviewable changes (8)
- docs/customizer/tutorials/dpo-customization-job.ipynb
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/rl-kubernetes-runtime.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters-rl.md
- docs/customizer/tutorials/dpo-customization-job.mdx
- docs/troubleshooting/customizer.mdx
- docs/fern/components/NotebookViewer.tsx
- docs/fern/scripts/validate-notebook-viewer.mjs
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/tests.json
|
2c643e9 to
df87685
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 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 `@plugins/nemo-customizer/openapi/openapi.yaml`:
- Around line 395-400: Preserve the existing
`/apis/customization/v2/workspaces/{workspace}/rl/jobs*` routes as deprecated
aliases while adding the new `/unsloth/jobs` endpoint and its related routes.
Mark the legacy operations as deprecated in the OpenAPI contract and retain
equivalent behavior and schemas during the transition.
🪄 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: 392b5c30-5815-4f5a-92b5-6ea427ca882f
📒 Files selected for processing (20)
docs/customizer/tutorials/dpo-customization-job.ipynbdocs/customizer/tutorials/dpo-customization-job.mdxdocs/fern/components/NotebookViewer.tsxdocs/fern/components/notebooks/dpo-customization-job.jsondocs/fern/components/notebooks/dpo-customization-job.tsdocs/fern/scripts/validate-notebook-viewer.mjsdocs/troubleshooting/customizer.mdxplugins/nemo-customizer/README.mdplugins/nemo-customizer/openapi/openapi.yamlplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/SKILL.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/dataset-formats.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hf-conversion.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters-rl.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/integrations-setup.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/reporting.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/rl-kubernetes-runtime.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/troubleshooting.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/tests.jsonplugins/nemo-rl/pyproject.toml
💤 Files with no reviewable changes (8)
- docs/troubleshooting/customizer.mdx
- docs/customizer/tutorials/dpo-customization-job.mdx
- docs/fern/scripts/validate-notebook-viewer.mjs
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters-rl.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/tests.json
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/rl-kubernetes-runtime.md
- docs/customizer/tutorials/dpo-customization-job.ipynb
- docs/fern/components/NotebookViewer.tsx
🚧 Files skipped from review as they are similar to previous changes (6)
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hf-conversion.md
- plugins/nemo-rl/pyproject.toml
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/troubleshooting.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/dataset-formats.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/reporting.md
anubhutivyas
left a comment
There was a problem hiding this comment.
I think we still publish the rl training image, do we also need to remove it from .github/workflows/release.yaml and docker-bake.hcl?
I think it's okay to leave them in. The entrypoint is removed, so there's no way to leverage the images. |
…emediation The nmp-rl-training image currently has unresolved Critical/High CVEs. Until they are fixed and re-QA'd, drop the RL (DPO) customization backend as a reversible feature flag so users cannot trigger RL jobs or accidentally pull the vulnerable image. Commenting the nemo-rl plugin's contributor + jobs entry points removes RL from the customizer router, CLI, and plugin SDK; with no route or job registration, no RL job can be launched, and it is not re-enablable via a runtime env var. - plugins/nemo-rl/pyproject.toml: comment both entry-point blocks (the flag) - skills: scrub RL/DPO from SKILL.md + shared references; delete the two RL-only reference files; drop RL cases from tests.json - docs: remove the DPO customization tutorial and its notebook-viewer registrations - openapi: regenerate the customizer plugin spec (RL schemas/paths removed) Plugin code, services/rl, and the Dockerfiles are intentionally left intact so the image can still be built to test the CVE fix and re-enabling is a one-step revert (uncomment + uv sync + make refresh-openapi). Signed-off-by: Albert Cui <[email protected]>
Signed-off-by: Albert Cui <[email protected]>
Signed-off-by: Albert Cui <[email protected]>
e658cab to
dad40c6
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 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 `@plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/SKILL.md`:
- Around line 105-111: Update the execution-profile selection instructions
around the provider checks to also validate the selected profile’s backend. Only
choose automodel or unsloth when the profile uses the Docker backend; if a GPU
profile is backed by kubernetes_job, volcano_job, or any non-docker backend,
stop and report that GPU customization requires a Docker-backed profile.
🪄 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: b286dd9b-fd30-41c9-8e48-5fe514857467
⛔ Files ignored due to path filters (1)
uv.lockis excluded by!**/*.lock
📒 Files selected for processing (22)
docs/customizer/tutorials/dpo-customization-job.ipynbdocs/customizer/tutorials/dpo-customization-job.mdxdocs/fern/components/NotebookViewer.tsxdocs/fern/components/notebooks/dpo-customization-job.jsondocs/fern/components/notebooks/dpo-customization-job.tsdocs/fern/scripts/validate-notebook-viewer.mjsdocs/troubleshooting/customizer.mdxplugins/nemo-customizer/README.mdplugins/nemo-customizer/openapi/openapi.yamlplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/SKILL.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/dataset-formats.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hf-conversion.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters-rl.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/integrations-setup.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/reporting.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/rl-kubernetes-runtime.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/troubleshooting.mdplugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/tests.jsonplugins/nemo-rl/pyproject.tomlpyproject.tomlthird_party/requirements-main.txt
💤 Files with no reviewable changes (9)
- docs/customizer/tutorials/dpo-customization-job.mdx
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/rl-kubernetes-runtime.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters-rl.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/tests.json
- docs/troubleshooting/customizer.mdx
- docs/customizer/tutorials/dpo-customization-job.ipynb
- docs/fern/components/NotebookViewer.tsx
- pyproject.toml
- docs/fern/scripts/validate-notebook-viewer.mjs
🚧 Files skipped from review as they are similar to previous changes (9)
- plugins/nemo-customizer/README.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/troubleshooting.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/integrations-setup.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hf-conversion.md
- plugins/nemo-rl/pyproject.toml
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/dataset-formats.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/reporting.md
- plugins/nemo-customizer/src/nemo_customizer/skills/nemo-customizer/references/hyperparameters.md
- plugins/nemo-customizer/openapi/openapi.yaml
Signed-off-by: Albert Cui <[email protected]>
2204e69 to
705c851
Compare
NVIDIA-NeMo#869) * fix(customizer): disable RL/DPO backend pending nmp-rl-training CVE remediation The nmp-rl-training image currently has unresolved Critical/High CVEs. Until they are fixed and re-QA'd, drop the RL (DPO) customization backend as a reversible feature flag so users cannot trigger RL jobs or accidentally pull the vulnerable image. Commenting the nemo-rl plugin's contributor + jobs entry points removes RL from the customizer router, CLI, and plugin SDK; with no route or job registration, no RL job can be launched, and it is not re-enablable via a runtime env var. - plugins/nemo-rl/pyproject.toml: comment both entry-point blocks (the flag) - skills: scrub RL/DPO from SKILL.md + shared references; delete the two RL-only reference files; drop RL cases from tests.json - docs: remove the DPO customization tutorial and its notebook-viewer registrations - openapi: regenerate the customizer plugin spec (RL schemas/paths removed) Plugin code, services/rl, and the Dockerfiles are intentionally left intact so the image can still be built to test the CVE fix and re-enabling is a one-step revert (uncomment + uv sync + make refresh-openapi). Signed-off-by: Albert Cui <[email protected]> * address comments and uv sync Signed-off-by: Albert Cui <[email protected]> * fix lint Signed-off-by: Albert Cui <[email protected]> * fix lint Signed-off-by: Albert Cui <[email protected]> --------- Signed-off-by: Albert Cui <[email protected]>
…emediation
The nmp-rl-training image currently has unresolved Critical/High CVEs. Until they are fixed and re-QA'd, drop the RL (DPO) customization backend as a reversible feature flag so users cannot trigger RL jobs or accidentally pull the vulnerable image. Commenting the nemo-rl plugin's contributor + jobs entry points removes RL from the customizer router, CLI, and plugin SDK; with no route or job registration, no RL job can be launched, and it is not re-enablable via a runtime env var.
Plugin code, services/rl, and the Dockerfiles are intentionally left intact so the image can still be built to test the CVE fix and re-enabling is a one-step revert (uncomment + uv sync + make refresh-openapi).
Summary by CodeRabbit