Skip to content

Conversation

@Shr1ftyy
Copy link
Collaborator

@Shr1ftyy Shr1ftyy commented Feb 6, 2026

Summary

  • Pin metaworld to correct release tag 3.0.0 (not v3.0.0) across pyproject.toml and Docker requirements — the v3.0.0 tag points to an older commit missing width/height constructor params
  • Pin procthor to latest upstream commit (53d5bd4) for reproducible builds
  • Migrate metaworld_env.py from deprecated mujoco-py API to mujoco 3.x:
    • model.site_name2id()mujoco.mj_name2id()
    • data.site_xquat[]mujoco.mju_mat2Quat() from data.site_xmat[]
    • data.site_xvelp[]/site_xvelr[]mujoco.mj_objectVelocity()
  • Add monkey-patch for upstream procthor bug (allenai/procthor#60) where small object placement crashes on pipe-delimited room IDs

Test plan

  • Rebuilt both kinitro/metaworld:v1 and kinitro/procthor:v1 containers
  • Ran full E2E test with scheduler + executor against testnet (4 miners, 2 episodes/env)
  • Verified metaworld/reach-v3 tasks execute with zero errors (no width, site_name2id, site_xquat, or site_xvelp issues)
  • Verified procthor/v0 tasks execute with monkey-patch catching upstream bug gracefully
  • All 16 tasks (2 envs × 4 miners × 2 episodes) completed successfully with results accepted

Note

The procthor environment will be removed in a separate PR.

Summary by CodeRabbit

Release Notes

  • Chores

    • Updated MetaWorld dependency to version 3.0.0 release.
    • Pinned ProcTHOR dependency to a specific commit for reproducible builds.
  • Bug Fixes

    • Improved error handling for small object placement in ProcTHOR environments.
  • Improvements

    • Updated environment components to work with the latest MuJoCo library, enhancing end-effector orientation and velocity calculations.

…issues

- Pin metaworld to correct release tag 3.0.0 (not v3.0.0) across
  pyproject.toml and Docker requirements for width/height support
- Pin procthor to latest commit (53d5bd4) for reproducible builds
- Migrate metaworld_env.py from deprecated mujoco-py API to mujoco 3.x:
  model.site_name2id -> mujoco.mj_name2id
  data.site_xquat -> mujoco.mju_mat2Quat from data.site_xmat
  data.site_xvelp/xvelr -> mujoco.mj_objectVelocity
- Add monkey-patch for upstream procthor bug (allenai/procthor#60) where
  small object placement crashes on pipe-delimited room IDs
@coderabbitai
Copy link

coderabbitai bot commented Feb 6, 2026

📝 Walkthrough

Walkthrough

Dependency pins updated for MetaWorld and ProcTHOR. MetaWorld environment code migrated to MuJoCo 3.x APIs for orientation and velocity retrieval. ProcTHOR house generation patched to skip small-object placement on specific ValueError via a wrapper applied at import time. No public APIs changed.

Changes

Cohort / File(s) Summary
Dependency pinning for reproducibility
environments/metaworld/requirements.txt, environments/procthor/requirements.txt, pyproject.toml
Pin MetaWorld from v3.0.0 tag style to 3.0.0 release; pin ProcTHOR to a specific commit in both requirements and pyproject.
MuJoCo 3.x migration in MetaWorld env
kinitro/environments/metaworld_env.py
Replace site orientation and velocity access with MuJoCo 3.x APIs (mj_name2id, site_xmat + mju_mat2Quat, mj_objectVelocity); access model via env.unwrapped.model; adjust observation construction.
ProcTHOR small-object placement patch
kinitro/environments/procthor/house_generator.py
Add wrapper to catch specific ValueError in default_add_small_objects and skip placement with a warning; patch applied at import, including procthor.generation re-exports.

Sequence Diagram(s)

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Suggested reviewers

  • rishiad

Poem

A hop, a pin, a gentle tweak—
I nudge the worlds we build each week.
MuJoCo spins, ProcTHOR sighs,
I skip small things, with twitching eyes.
Release tags bloom—so neat, so sweet—
Thump-thump! My review is now complete. 🥕🐇

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: updating dependencies (metaworld, procthor) and fixing MuJoCo 3.x compatibility issues in the environment code.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/update-envs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Shr1ftyy Shr1ftyy marked this pull request as draft February 6, 2026 08:18
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.

1 participant