Merge Cartpole Direct and Manager, Remove deprecated task names#5904
Conversation
There was a problem hiding this comment.
🤖 Isaac Lab Review Bot — Multi-Perspective Review
Updated review — now reflecting head commit 9c59d062 (previously reviewed 877757f7).
Summary
This PR merges the Direct and Manager-based Cartpole task packages into a single isaaclab_tasks.core.cartpole package and removes 35+ deprecated per-variant task IDs. It's a well-executed structural refactor with clear changelog documentation.
📝 Incremental Changes (since last review at 877757f7)
One new commit (9c59d062 — "Move cartpole golden image tests") with test asset reorganization:
Golden image consolidation:
- Renamed 7 files — per-variant camera task directories (
Isaac-Cartpole-Albedo-Camera-Direct-v0/,Isaac-Cartpole-Depth-Camera-Direct-v0/,Isaac-Cartpole-Camera-Presets-Direct-v0/,Isaac-Cartpole-SimpleShading-*-Camera-Direct-v0/) consolidated into a singleIsaac-Cartpole-Camera-Direct/directory - Removed 2 files —
Isaac-Cartpole-RGB-Camera-Direct-v0/directory deleted (rgb.png and rgba.png now redundant, covered by consolidated directory)
This is purely a test infrastructure change — aligning golden image paths with the new unified task name Isaac-Cartpole-Camera-Direct.
🧪 Isaac Lab Expert Perspective
Test alignment is correct. Since the deprecated per-variant camera task names (Isaac-Cartpole-Albedo-Camera-Direct-v0, Isaac-Cartpole-RGB-Camera-Direct-v0, etc.) have been merged into Isaac-Cartpole-Camera-Direct, the golden images must also live under that single directory. The rename preserves existing test images without regeneration.
No concerns: The RGB/RGBA images removed from Isaac-Cartpole-RGB-Camera-Direct-v0/ are duplicates of what's now at Isaac-Cartpole-Camera-Direct/default_physics-default_renderer-rgb.png and rgba.png (renamed from the -Camera-Presets- variant).
🔇 Silent Failure Hunter Perspective
Low risk. If any golden-image test still references the old directory paths, it would produce a clear test failure (file not found), not a silent regression. The consolidation is straightforward.
✅ Overall Assessment
LGTM — This commit completes the test infrastructure alignment for the task name consolidation. No logic changes, no risk of silent failures. The PR is now fully consistent: code, configs, changelogs, and test assets all reflect the unified naming scheme.
Update (504e41a): New commit regenerates 4 golden images under Isaac-Cartpole-Camera-Direct/ (albedo, constant_diffuse, diffuse_mdl, full_mdl). Only LFS pointer hashes and minor file-size changes — no code or logic modifications. Still LGTM. ✅
Restore jichuanh-cartpole-presets.minor.rst to its develop version since changelog fragments are immutable, and document the dropped -Manager suffix on the manager-based cartpole tasks in a new fragment instead.
Description
This PR overhauls the
isaaclab_taskspackage layout and consolidates the Cartpoletask family. It is primarily a breaking refactor of import paths and registered Gym
environment IDs, with corresponding updates across the docs, example/training scripts,
GitHub Actions workflows, and tests.
The changes fall into three parts:
Merged Cartpole packages. The direct-workflow and manager-based-workflow Cartpole
packages (
isaaclab_tasks.core.direct_cartpoleandisaaclab_tasks.core.manager_cartpole)are merged into a single flat
isaaclab_tasks.core.cartpolepackage. Module files nowcarry a
_direct_or_manager_infix to disambiguate the two workflows. The CartpoleGym environment IDs were renamed to spell out their workflow and drop the
-v0versionsuffix (e.g.
Isaac-Cartpole-Direct-v0→Isaac-Cartpole-Direct,Isaac-Cartpole-v0→Isaac-Cartpole-Manager).Removed deprecated Cartpole task IDs. Removed 35 per-variant Cartpole task IDs
(7 Direct camera, 4 manager-based camera, 15 proprioceptive showcase, 9 camera-based
showcase) along with the
deprecatedgym.registerkwarg that flagged them as aliases.These variants are now selected via the consolidated tasks plus
presets=<name>(e.g.
Isaac-Cartpole-{RGB,Depth,...}-Camera-Direct-v0→--task=Isaac-Cartpole-Camera-Direct presets=<rgb|depth|albedo|...>). A handful of otherstale environments (
Isaac-Quadcopter-Direct-v0,Isaac-Lift-Teddy-Bear-Franka-IK-Abs-v0,Isaac-Repose-Cube-Allegro-NoVelObs-v0,Isaac-Repose-Cube-Allegro-NoVelObs-Play-v0)were also removed.
Docs, RL/example scripts, the multi-GPU GitHub Actions workflow,
AGENTS.md, and theaffected test suite were updated to use the new task IDs and import paths.
Affected package:
isaaclab_tasks(plus docs,scripts/,.github/workflows/).Type of change
Checklist
pre-commitchecks with./isaaclab.sh --formatconfig/extension.tomlfileCONTRIBUTORS.mdor my name already exists there