Fix pretrained checkpoint matrix - #7424
Conversation
There was a problem hiding this comment.
Isaac Lab Review Bot
The change correctly avoids default-backend normalization for preset-driven tasks, allowing unsupported preset-only tasks to be skipped, and restores the Newton MJWarp job for Isaac-Reach-Franka-OSC. The added tests cover both regressions.
- Design and architecture: The reordered lookup matches
_select_physics_variants: preset-driven tasks select only recognized variants, while preset-less tasks still use their normalized default backend. The retained privatetask_nameargument is unused after removing the exclusion, but this is optional cleanup rather than a material design defect. - API: No public API, CLI option, or documented compatibility surface changes. Widening the private helper's
default_backendparameter tostr | Nonematches its new internal call path, and the skip fragment is appropriate for this tooling-only change. - Implementation: The job-construction paths preserve existing behavior for supported preset and preset-less tasks. The regression tests directly exercise unsupported preset handling and restored OSC/Newton MJWarp selection; no concrete implementation failure is evidenced.
No blocking issues. No inline issue met the actionable-evidence threshold; the assessment above records the review feedback.
Automated review; human maintainers own approval decisions.
Greptile SummaryThe PR fixes checkpoint matrix construction so preset-only tasks with unsupported physics variants do not require default-backend normalization, and it restores Newton MJWarp checkpoint generation for the Franka OSC reach task.
Confidence Score: 5/5The PR appears safe to merge, with no concrete blocking or independently actionable non-blocking issue identified. The changed matrix logic avoids unsupported default-backend normalization while retaining concrete preset selection, and the restored Franka OSC Newton MJWarp path is covered by focused tests. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Registered core task] --> B[Enumerate task presets]
B --> C[Parse environment configuration]
C --> D[Select learning workflow]
D --> E{Named physics presets exist?}
E -->|No| F[Normalize default physics backend]
E -->|Yes| G[Match requested concrete selectors]
F --> H[Build checkpoint jobs]
G --> H
G --> I[Include Franka OSC Newton MJWarp]
Reviews (1): Last reviewed commit: "Enable Franka Reach OSC MJWarp checkpoin..." | Re-trigger Greptile |
…pretrained-checkpoint
|
run-ci |
|
Backported to |
# Description Fix the checkpoint workflow so unsupported preset-only tasks do not abort construction of the supported core matrix, and restore the Newton MJWarp checkpoint job for `Isaac-Reach-Franka-OSC`. The OSC task previously required an exclusion because implicit feed-forward efforts were not limited by MJWarp. That controller issue was fixed by #7033 using a zero-gain explicit actuator that enforces the Franka asset effort limits before simulation. The checkpoint exclusion remained after that fix and is now stale. ## Validation - Focused Ruff hooks passed during `uv run isaaclab -f` - `uv run --frozen --extra test python -m pytest scripts/tools/test/test_train_and_publish_checkpoints.py -q` — 8 passed - Newton MJWarp OSC training: 1,000 PPO iterations, 4,096 environments, 98,304,000 steps, 92.92% final training success, no NaNs - The trained checkpoint loaded successfully and its staged download matched the local SHA-256 The full local pre-commit run reaches unrelated changelog-fragment failures already present on the current `develop` checkout; this PR changes only the checkpoint utility, its tests, and an `isaaclab_rl` skip fragment. ## Staged checkpoints - `omniverse://isaac-dev.ov.nvidia.com/Isaac/IsaacLab/PretrainedCheckpoints/rsl_rl/Isaac-Open-Drawer-Franka_newtonmjwarp_none_rsl_rl.pt` - `omniverse://isaac-dev.ov.nvidia.com/Isaac/IsaacLab/PretrainedCheckpoints/rsl_rl/Isaac-Reach-Franka-OSC_newtonmjwarp_none_rsl_rl.pt` Public Isaac 6.1 asset-pack promotion is handled separately from this code change. ## Type of change - Bug fix (non-breaking change which fixes an issue) ## Release backport - [x] <!-- backport-active-release --> Backport this pull request to the active release branch after it merges into `develop` ## Screenshots Not applicable. ## Checklist - [x] I have read and understood the contribution guidelines - [x] I ran the applicable pre-commit and focused validation checks - [x] Documentation/changelog requirements are satisfied with a skip fragment because only tooling is changed - [x] My changes generate no new warnings - [x] I have added tests that prove the fix - [x] My name already exists in `CONTRIBUTORS.md` (cherry picked from commit 1b92aad)
Description
Fix the checkpoint workflow so unsupported preset-only tasks do not abort construction of the supported core matrix, and restore the Newton MJWarp checkpoint job for
Isaac-Reach-Franka-OSC.The OSC task previously required an exclusion because implicit feed-forward efforts were not limited by MJWarp. That controller issue was fixed by #7033 using a zero-gain explicit actuator that enforces the Franka asset effort limits before simulation. The checkpoint exclusion remained after that fix and is now stale.
Validation
uv run isaaclab -fuv run --frozen --extra test python -m pytest scripts/tools/test/test_train_and_publish_checkpoints.py -q— 8 passedThe full local pre-commit run reaches unrelated changelog-fragment failures already present on the current
developcheckout; this PR changes only the checkpoint utility, its tests, and anisaaclab_rlskip fragment.Staged checkpoints
omniverse://isaac-dev.ov.nvidia.com/Isaac/IsaacLab/PretrainedCheckpoints/rsl_rl/Isaac-Open-Drawer-Franka_newtonmjwarp_none_rsl_rl.ptomniverse://isaac-dev.ov.nvidia.com/Isaac/IsaacLab/PretrainedCheckpoints/rsl_rl/Isaac-Reach-Franka-OSC_newtonmjwarp_none_rsl_rl.ptPublic Isaac 6.1 asset-pack promotion is handled separately from this code change.
Type of change
Release backport
developScreenshots
Not applicable.
Checklist
CONTRIBUTORS.md