Skip to content

feat: integrate GraspGenX grasp proposals#3157

Draft
TomCC7 wants to merge 5 commits into
mainfrom
cc/feat/graspgenx-proposals
Draft

feat: integrate GraspGenX grasp proposals#3157
TomCC7 wants to merge 5 commits into
mainfrom
cc/feat/graspgenx-proposals

Conversation

@TomCC7

@TomCC7 TomCC7 commented Jul 24, 2026

Copy link
Copy Markdown
Member

Summary

  • add a lean TCP-frame grasp candidate protocol and direct in-process GraspGenX adapter with sweep-volume gripper configuration
  • add a deterministic CUDA-backed YCB banana demo with ranked YAML output and replayable Rerun recordings
  • add generic coordinator-owned one-shot module lifecycle support and offline-safe GraspGenX packaging
  • visualize the top five candidates as score-colored planar fork profiles, with rank one visible by default

Dependency note

The optional graspgenx extra intentionally resolves the shared environment to Torch 2.6 and torchvision 0.21, with validated compatibility overrides documented in the change.

Verification

  • 60 focused tests passed; 1 deselected
  • blueprint registry generation passed under CI=1
  • Ruff check and format check passed
  • git diff --check passed
  • real RTX 3090 inference produced 100 finite, descending world-frame candidates
  • generated RRD passed rerun rrd verify; planar fork visualization was manually confirmed readable in a fresh viewer

@mintlify

mintlify Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
dimensional 🟢 Ready View Preview Jul 24, 2026, 2:03 AM

💡 Tip: Enable Workflows to automatically generate PRs for you.

@codecov

codecov Bot commented Jul 24, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 81.62544% with 260 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
dimos/manipulation/graspgenx_demo/visualization.py 66.28% 71 Missing and 17 partials ⚠️
dimos/manipulation/grasping/grasp_gen_x.py 82.15% 24 Missing and 14 partials ⚠️
dimos/manipulation/graspgenx_demo/fixture.py 59.52% 17 Missing and 17 partials ⚠️
dimos/manipulation/graspgenx_demo/demo.py 73.17% 21 Missing and 12 partials ⚠️
dimos/manipulation/graspgenx_demo/test_demo.py 86.54% 22 Missing and 1 partial ⚠️
dimos/manipulation/grasping/test_grasp_gen_x.py 92.46% 15 Missing ⚠️
dimos/manipulation/graspgenx_demo/extractor.py 57.57% 7 Missing and 7 partials ⚠️
dimos/manipulation/graspgenx_demo/output.py 76.47% 4 Missing and 4 partials ⚠️
dimos/msgs/manipulation_msgs/GraspCandidate.py 70.58% 4 Missing and 1 partial ⚠️
dimos/manipulation/graspgenx_demo/__main__.py 91.30% 1 Missing and 1 partial ⚠️
@@            Coverage Diff             @@
##             main    #3157      +/-   ##
==========================================
+ Coverage   73.84%   73.95%   +0.10%     
==========================================
  Files        1099     1117      +18     
  Lines      102539   104026    +1487     
  Branches     9402     9532     +130     
==========================================
+ Hits        75720    76929    +1209     
- Misses      24131    24332     +201     
- Partials     2688     2765      +77     
Flag Coverage Δ
OS-ubuntu-24.04-arm 67.55% <81.48%> (+0.20%) ⬆️
OS-ubuntu-latest 69.50% <81.48%> (+0.17%) ⬆️
Py-3.10 69.49% <81.48%> (+0.17%) ⬆️
Py-3.11 69.48% <81.48%> (+0.16%) ⬆️
Py-3.12 69.49% <81.48%> (+0.17%) ⬆️
Py-3.13 69.50% <81.48%> (+0.18%) ⬆️
Py-3.14 69.49% <81.48%> (+0.17%) ⬆️
Py-3.14t 69.49% <81.48%> (+0.17%) ⬆️
SelfHosted-Large 29.71% <26.14%> (-0.06%) ⬇️
SelfHosted-macOS 35.29% <26.29%> (-0.13%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
dimos/manipulation/graspgenx_demo/test_fixture.py 100.00% <100.00%> (ø)
.../manipulation/graspgenx_demo/test_visualization.py 100.00% <100.00%> (ø)
dimos/manipulation/grasping/grasp_gen_spec.py 100.00% <100.00%> (ø)
dimos/manipulation/grasping/grasping.py 69.69% <100.00%> (ø)
...mos/manipulation/grasping/legacy_grasp_gen_spec.py 100.00% <100.00%> (ø)
...imos/manipulation/grasping/test_grasping_legacy.py 100.00% <100.00%> (ø)
...imos/msgs/manipulation_msgs/GraspCandidateArray.py 100.00% <100.00%> (ø)
dimos/robot/all_blueprints.py 100.00% <ø> (ø)
dimos/manipulation/graspgenx_demo/__main__.py 91.30% <91.30%> (ø)
dimos/msgs/manipulation_msgs/GraspCandidate.py 70.58% <70.58%> (ø)
... and 8 more

... and 6 files with indirect coverage changes

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@mintlify

mintlify Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
dimensional 🟡 Building Jul 24, 2026, 2:03 AM

💡 Tip: Enable Workflows to automatically generate PRs for you.

Comment thread dimos/manipulation/grasping/legacy_grasp_gen_spec.py
Comment thread dimos/manipulation/graspgenx_demo/fixtures/ycb_banana_scene.json
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