Docs: Improve LEAPP clean-clone export guidance - #7156
Conversation
Greptile SummaryThe PR updates LEAPP export and deployment guidance to use the current backend-extra and physics-selection model, and adds current training and pretrained-checkpoint references.
Confidence Score: 4/5The documentation should be corrected before merging because its isaaclab.sh and isaaclab.bat alternatives fail on a clean clone without a separate LEAPP/backend installation step. The uv examples activate the required extras, but the newly presented wrapper alternatives only execute an existing interpreter and therefore leave required LEAPP and backend packages unavailable. Files Needing Attention: docs/source/policy_deployment/05_leapp/exporting_policies_with_leapp.rst; docs/source/tutorials/06_exporting/exporting_direct_workflow_policies_with_leapp.rst Important Files Changed
Reviews (1): Last reviewed commit: "Docs: Point LEAPP export at train and --..." | Re-trigger Greptile |
| # Newton backend (kitless) | ||
| ./isaaclab.sh -p \ | ||
| scripts/reinforcement_learning/leapp/<rl_library>/export.py \ | ||
| --task <TASK_NAME> physics=newton_mjwarp |
There was a problem hiding this comment.
Wrapper commands omit required extras
When a clean-clone user selects an isaaclab.sh or isaaclab.bat example, the wrapper only invokes the existing Python interpreter and does not install the specialized LEAPP or backend extras, causing export or deployment to fail because the required packages are unavailable.
There was a problem hiding this comment.
Isaac Lab Review Bot
The documentation aligns LEAPP export and deployment with the backend-extra and physics=... selection pattern used by training. However, removing the persistent leapp installation step leaves the retained isaaclab.sh and isaaclab.bat workflows without documented instructions for installing an extra that is explicitly excluded from --extra all.
- Design and architecture: The Newton, OV PhysX, and Isaac Sim PhysX command structure is consistent across export and deployment. The wrapper tabs remain incompatible with the new exclusively per-command extras guidance because those wrappers cannot express
uv run --extra. - API: No code or CLI contract changes are introduced. The documented checkpoint, visualization, export-path, and physics-selection surfaces are presented consistently, but the installation contract is incomplete for wrapper users.
- Implementation: The uv commands supply
leappand the appropriate backend extras directly. In contrast, theisaaclab.shandisaaclab.batcommands rely on an already-installed environment, while the patch removes the only persistent installation instruction; a wrapper-specific installation step should be retained or added.
Minor fixes needed. Posted 1 actionable finding inline.
Automated review; human maintainers own approval decisions.
| ``leapp`` is a specialized optional extra (it is not part of ``--extra all``). | ||
|
|
||
| .. code-block:: bash | ||
| Select extras the same way as ``isaaclab train``: add ``--extra leapp`` on every |
There was a problem hiding this comment.
🟡 Warning · Implementation — Wrapper tabs lose LEAPP install instruction
This rewrite removed the only persistent install step (uv sync --inexact --extra leapp) and now explains extras solely as per-command uv run --extra flags. The retained and newly added isaaclab.sh / isaaclab.bat tabs (e.g. lines 114-127, 444-463) execute in the already-installed environment and cannot pass --extra, so readers on that path have no documented way to install leapp, which the same section states is excluded from --extra all. Keep an install step for the wrapper path.
Summary
uv sync --extra leappsetup.isaaclab trainand--checkpoint pretrainedso a clean clone can get from docs to a working export without relying on removed per-backendtrain.pyscripts.