Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,10 @@ Use [docs/README.md](docs/README.md) as the documentation index. High-signal ent

```bibtex
@article{jia2026mujocouni,
title={MuJoCoUni: Persistent Batched Runtime Primitives for MuJoCo},
author={Jia, Yufei and Wu, Junzhe},
journal={arXiv preprint arXiv:2605.24922},
year={2026}
title = {MuJoCoUni: Persistent Batched Runtime Primitives for MuJoCo},
author = {Jia, Yufei and Wu, Junzhe},
journal = {arXiv preprint arXiv:2605.24922},
year = {2026}
}

@software{motrixsim2026,
Expand Down
18 changes: 18 additions & 0 deletions conf/appo/task/sharpa_inhand/motrix.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# @package _global_
defaults:
- /task/sharpa_inhand/mujoco
- _self_

training:
task_name: SharpaInhandRotation
sim_backend: motrix

algo:
num_envs: 2048

env:
sim_dt: 0.01
domain_rand:
randomize_gravity: true
randomize_gravity_direction: false
randomize_pd_gains: true
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ uv run scripts/generate_support_matrix.py --write
| APPO (torch) | `g1_flip_tracking` (G1 flip tracking) | Tested | Tested |
| APPO (torch) | `g1_wall_flip_tracking` (G1 wall flip tracking) | Tested | Tested |
| APPO (torch) | `allegro_inhand` (Allegro in-hand) | Tested | Tested |
| APPO (torch) | `sharpa_inhand` (Sharpa in-hand) | Tested | Registered |
| APPO (torch) | `sharpa_inhand` (Sharpa in-hand) | Tested | Tested |
| APPO (torch) | `g1_climb_tracking` (g1 climb tracking) | Tested | Tested |
| SAC (torch) | `g1_walk_flat` (G1 walk flat) | Tested | Tested |
| SAC (torch) | `g1_walk_rough` (G1 walk rough) | Tested | Tested |
Expand Down
2 changes: 1 addition & 1 deletion tests/scripts/test_support_matrix.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ def test_support_matrix_marks_sharpa_motrix_phase1_support():
appo_row = _row("APPO (torch)", "sharpa_inhand")

assert appo_row.cells["mujoco"].level == EvidenceLevel.TESTED
assert appo_row.cells["motrix"].level == EvidenceLevel.REGISTERED
assert appo_row.cells["motrix"].level == EvidenceLevel.TESTED
allegro_appo_row = _row("APPO (torch)", "allegro_inhand")

assert allegro_appo_row.cells["mujoco"].level == EvidenceLevel.TESTED
Expand Down
12 changes: 12 additions & 0 deletions tests/scripts/test_train_scripts.py
Original file line number Diff line number Diff line change
Expand Up @@ -887,6 +887,18 @@ def test_g1_motion_tracking_appo_task_exposes_final_reward():
assert cfg.reward.scales.motion_body_pos == pytest.approx(1.0)


def test_sharpa_appo_motrix_owner_uses_backend_specific_overrides():
cfg = _appo_cfg(["task=sharpa_inhand/motrix"])

assert cfg.training.task_name == "SharpaInhandRotation"
assert cfg.training.sim_backend == "motrix"
assert cfg.algo.num_envs == 2048
assert cfg.env.sim_dt == pytest.approx(0.01)
assert cfg.env.domain_rand.randomize_gravity is True
assert cfg.env.domain_rand.randomize_gravity_direction is False
assert cfg.env.domain_rand.randomize_pd_gains is True


# ---------------------------------------------------------------------------
# train_appo.py — motrix runner / play helpers
# ---------------------------------------------------------------------------
Expand Down
Loading