feat: libero autoresearch - #3526
Closed
TomCC7 wants to merge 4 commits into
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Contribution path
Problem
The initial LIBERO-PRO integration exposes calibrated observations and ordinary manipulation RPCs, but realtime code policies still have to assemble grounding, depth projection, grasp geometry, gripper control, placement, and verification correctly within a short simulator horizon. In repeated trials, policies often selected the right object yet failed to retain it, released it against a receptacle wall, or blocked the policy session with an overlong kernel call.
We need general manipulation capability developed through LIBERO, not benchmark-specific coordinates or task logic.
Solution
Add a general explicit-observation manipulation path on top of #3439:
segment_bestperception and calibrated 2D-to-3D projection typingGraspExecutionModuleRPCs for ranked grasp execution and point-cloud pick-and-placeRGBDObservationexplicitly; the module does not subscribe to a hidden camera stream or access privileged evaluation stateThe retained implementation contains no LIBERO object names, task IDs, or hard-coded scene coordinates.
Autoresearch improved the frozen development panel from
0/4to1/4native success with zero infrastructure/policy failures. The object success reproduced unchanged in a second full-panel run. Both successful trials ended through LIBERO's native BDDL predicate with score1.0and terminal reasonsuccess.How to Test
Run the focused suite:
Run the frozen development panel:
Validated locally:
1/4with zero failuresCurrent local mypy also reports the inherited
ImageContent(mimeType=...)call incode_policy_server.py; this PR does not modify that line.AI assistance
Codex with GPT-5.6 performed the autonomous experiment loop, implementation, transcript/video audits, tests, and PR drafting. The author directed the benchmark contract and general-capability constraints and reviewed the resulting design interactively.
Checklist