Skip to content

Define joint and EEF action contracts for datasets - #680

Open
yuecideng wants to merge 8 commits into
mainfrom
codex/feat/action-representation-contract
Open

yuecideng wants to merge 8 commits into
mainfrom
codex/feat/action-representation-contract

Conversation

@yuecideng

@yuecideng yuecideng commented Sep 23, 2026 •

Copy link
Copy Markdown
Contributor

Description

This PR defines an explicit joint/EEF action contract for EmbodiChain expert and LeRobot datasets while keeping joint position as the default representation.

It preserves raw requested EEF commands through the action manager, records measured FK EEF poses as auxiliary observations, records executed controller qpos separately, and adds the Franka RLinf-facing repeated pick-and-place task variants. The joint gripper term also exposes its true 8D policy action space, including normalized gripper bounds. The contract and temporal alignment are documented in the task README and episode metadata.

This PR intentionally does not include RLinf training/runtime fixes, joint dataset regeneration or SFT checkpoints, or DexSim dependency changes. Those belong to follow-up changes after this contract is available.

Fixes #601

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • Enhancement (non-breaking change which improves an existing functionality)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (existing functionality will not work without user modification)
  • Documentation update

Validation

  • EmbodiChain focused tests: 55 passed.
  • RLinf EmbodiChain config tests: 5 passed in the RLinf environment.
  • Public API coverage: 2261/2261 exports documented.
  • API documentation tests: 8 passed.
  • Full-tree Black check, compileall, and git diff --check passed.

Checklist

  • I have run the black . command to format the code base.
  • I reviewed affected documentation and agent context; no context guidance required a change.
  • Public API changes are reflected in the API docs (python docs/scripts/check_api_docs.py).
  • I have added tests that prove the action contract and recorder behavior.
  • Dependencies have been updated, if applicable.

@yuecideng yuecideng added enhancement New feature or request dataset task A task written in openai gym format for imitation learning or reinforcement learning gym robot learning env and its related features robot Module related to robot docs Improvements or additions to documentation labels Sep 23, 2026
Keep joint actions as the default LeRobot representation while making Cartesian targets explicit and opt-in. Preserve raw EEF commands, record measured EEF observations separately, and add the RLinf repeated pick-and-place deployment with focused tests and API documentation.\n\nFixes #601
@greptile-apps

greptile-apps Bot commented Sep 23, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

[High risk] Refactors action manager and dataset recording contracts.

The PR appears safe to merge based on the reviewed changes.

Summary

The PR defines descriptor-driven policy action contracts while retaining the expert joint-action default. It also updates recording and task configurations and, since the previous review, adds pretrained-policy evaluation, rigidized-articulation support, Viewer camera tracking, and robot and solver presets. The previous Greptile threads are resolved; no new actionable finding was established.

Diagram
%%{init: {'theme': 'neutral'}}%%
flowchart LR
  P[Flat policy action] --> M[ActionManager descriptors and terms]
  M --> C[Robot control]
  C --> O[Observation and rollout]
  P --> R[Policy action contract recorder]
  O --> R
  R --> D[LeRobot episode]
  E[Controller-ready expert action] --> C
  E --> X[Expert joint-action recorder]
  O --> X
  X --> D
Loading

Reviews (7) · Last reviewed commit: "Merge remote-tracking branch 'origin/mai..."

Comment thread embodichain/lab/gym/envs/managers/datasets.py Outdated
Comment thread embodichain/lab/gym/envs/managers/datasets.py Outdated
@yuecideng
yuecideng force-pushed the codex/feat/action-representation-contract branch from d991195 to 2dcf7ef Compare September 23, 2026 15:16
Comment thread embodichain_tasks/configs/tasks/locomotion/velocity/g1_flat/env.yaml Outdated
Comment thread embodichain/lab/gym/envs/embodied_env.py
Comment thread embodichain/lab/gym/envs/embodied_env.py Outdated
Comment thread embodichain/lab/gym/envs/managers/datasets.py

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dataset docs Improvements or additions to documentation enhancement New feature or request gym robot learning env and its related features robot Module related to robot task A task written in openai gym format for imitation learning or reinforcement learning

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Proposal] Define joint and EEF action representations for expert and LeRobot datasets

1 participant