Skip to content

feat: integrate IsaacGym fixed model variants (#1577) - #1582

Merged
TATP-233 merged 6 commits into
mainfrom
dev/issue-1577-isaacgym-fixed-variants
Sep 15, 2026
Merged

TATP-233 merged 6 commits into
mainfrom
dev/issue-1577-isaacgym-fixed-variants

Conversation

@TATP-233

@TATP-233 TATP-233 commented Sep 15, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Consume the published IsaacGym fixed-variant adapter by raising the base UniSim requirement to unisim-core>=1.4.1 in the default and ROCm dependency profiles. The optional superdex extra keeps its own >=1.4.0 constraint: SuperDex has no 1.4.1-specific change, and the base requirement already forces every installed profile to 1.4.1 or newer. UniLab's package version is unchanged.
  • Extend the deterministic IsaacGym protocol mock to validate variant sources, assignment bounds, per-variant dof-field tables, assigned keyframes, and handshake assignment echo.
  • Add IsaacGym fixed-variant coverage:
    • default test lane through the real wire protocol and shared memory;
    • public-layout drift fail-closed test;
    • real Preview-4 slow lane for actor-level asset selection, per-variant defaults, finite rollout, and per-env playback source.
  • Add the IsaacGym fixed-variant scale benchmark. Each variant count runs in a fresh child process and reports source generation, construction time, live worker RSS, and control/physics/env-step rates.
  • Document the IsaacGym fixed-variant contract and explicitly keep production 600-tool support gated on the real tool-catalog benchmark.

Closes #1578.
Roadmap: #1577.
Benchmark decision: #1579.

Upstream release evidence

Validation

Commands run on final local head after installing the published dependency:

uv sync --locked --extra mujoco --extra motrix
uv lock --check
make test-all
uv run --no-sync pytest -m slow tests/base/test_isaacgym_fixed_variants.py -q
uv run --no-sync pytest tests/scripts/test_check_docs.py -q

Results:

  • make test-all: PASS
    • formatting/lint/type gates passed (mypy 0 issues; pyright 0 errors, 1 pre-existing optional Drake import warning);
    • non-slow coverage suite: 1521 passed, 27 skipped;
    • benchmark smoke: module mode 34/35 and script mode 35/36 (one platform-optional MLX skip each).
  • Real IsaacGym Preview 4 slow lane: 1 passed on RTX 4090 with published unisim-core==1.4.1.
  • Docs gate: 19 passed.
  • uv lock --check: PASS.

Benchmark results and boundaries are recorded in #1579 (comment).

Impact

  • Backend impact: IsaacGym integration/tests/benchmark only.
  • Platform impact: Linux IsaacGym runtime lane; protocol tests run without the SDK.
  • Training effect expected: no production task owner changes in this PR.
  • Support claim: none added for the real 600-tool SimToolReal catalog; that remains gated on Benchmark IsaacGym fixed-variant scale and decide support #1579.

Artifacts

  • W&B: n/a
  • benchmark result: #1579 (comment)
  • video / screenshot: n/a
  • ONNX / checkpoint: n/a

Checklist

@TATP-233
TATP-233 merged commit e1fcb82 into main Sep 15, 2026
8 checks passed
@TATP-233
TATP-233 deleted the dev/issue-1577-isaacgym-fixed-variants branch September 15, 2026 08:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Cover IsaacGym fixed variants through protocol mock and gated runtime

1 participant