Skip to content

Conversation

@yuecideng
Copy link
Contributor

@yuecideng yuecideng commented Nov 20, 2025

Description

TODO

  • Update data module (change assets url to huggingface
  • Prepare github CI/CD (docs, tests)
  • Update docs overall
  • Change license in the header of code
  • Make all example ready to run
  • Add PR template

@yuecideng yuecideng requested a review from Copilot November 20, 2025 08:46
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR initializes a new project structure for an embodied AI framework called "embodichain". The code introduces core simulation components, gymnasium-style environment wrappers, action bank systems for motion generation, and reinforcement learning utilities.

Key Changes

  • Establishes base environment classes (BaseEnv, EmbodiedEnv) with gymnasium interface
  • Implements event/observation managers for environment randomization and data processing
  • Adds action bank system for configurable motion generation and trajectory planning
  • Includes example tasks (pour water, scoop ice, push cube) and environment wrappers

Reviewed Changes

Copilot reviewed 143 out of 291 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
embodichain/lab/gym/utils/gym_utils.py Core utilities for observation/action space conversion, tensor operations, and configuration parsing
embodichain/lab/gym/envs/wrapper/no_fail.py Simple wrapper that overrides task success determination
embodichain/lab/gym/envs/tasks/tableware/scoop_ice.py Scoop ice task environment with trajectory recording and replay
embodichain/lab/gym/envs/tasks/tableware/pour_water/pour_water.py Pour water task with action bank integration
embodichain/lab/gym/envs/tasks/rl/push_cube.py RL-based cube pushing task with reward shaping
embodichain/lab/gym/envs/managers/observations.py Observation computation functors including exteroception and semantic masks
embodichain/lab/gym/envs/managers/events.py Event functors for asset replacement, pose registration, and randomization
embodichain/lab/gym/envs/embodied_env.py Main embodied environment class with manager integration
embodichain/lab/gym/envs/action_bank/configurable_action.py Action bank system for graph-based motion generation
Comments suppressed due to low confidence (1)

embodichain/lab/gym/envs/base_env.py:1

  • Duplicate validation check. This same check appears at lines 294-298 and lines 428-432, creating redundant code that should be refactored into a helper function.
# ----------------------------------------------------------------------------

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Modified from `gym.envs.mujoco_env`
"""
if isinstance(observation, (dict)):
# CATUION: Explicitly create a list of key-value tuples
Copy link

Copilot AI Nov 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'CATUION' to 'CAUTION'.

Suggested change
# CATUION: Explicitly create a list of key-value tuples
# CAUTION: Explicitly create a list of key-value tuples

Copilot uses AI. Check for mistakes.
f"The original demo action list length: {len(self.demo_action_list)}"
)
logger.log_info(
f"Downsample the demo action list by self.trajectory_sample_rate5 times."
Copy link

Copilot AI Nov 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Text contains 'self.trajectory_sample_rate5' which appears to be a typo. Should likely be 'self.trajectory_sample_rate' (without the '5').

Suggested change
f"Downsample the demo action list by self.trajectory_sample_rate5 times."
f"Downsample the demo action list by {self.trajectory_sample_rate} times."

Copilot uses AI. Check for mistakes.
Comment on lines +39 to +42
# FIXME FIXME FIXME FIXME
logger.log_warning(
f"CAUTION=============================THIS FUNC generate_left_arm_aim_qpos IS WRONG!!!! PLEASE FIX IT!!!!"
)
Copy link

Copilot AI Nov 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Placeholder warning indicates incomplete or incorrect implementation. This function should be fixed or removed before production use.

Suggested change
# FIXME FIXME FIXME FIXME
logger.log_warning(
f"CAUTION=============================THIS FUNC generate_left_arm_aim_qpos IS WRONG!!!! PLEASE FIX IT!!!!"
)

Copilot uses AI. Check for mistakes.
Comment on lines +65 to +67
logger.log_warning(
f"CAUTION=============================THIS FUNC generate_right_arm_aim_qpos IS WRONG!!!! PLEASE FIX IT!!!!"
)
Copy link

Copilot AI Nov 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Placeholder warning indicates incomplete or incorrect implementation. This function should be fixed or removed before production use.

Copilot uses AI. Check for mistakes.
@yuecideng yuecideng merged commit bacfcde into main Nov 21, 2025
@yuecideng yuecideng deleted the yueci/init-project branch November 21, 2025 13:09
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.

2 participants