Skip to content

feat: integrate GraspGenX grasp proposals - #3157

Closed
TomCC7 wants to merge 13 commits into
mainfrom
cc/feat/graspgenx-proposals
Closed

feat: integrate GraspGenX grasp proposals#3157
TomCC7 wants to merge 13 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 91.71975% with 52 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
dimos/manipulation/demo_graspgenx/fixture.py 71.42% 9 Missing and 9 partials ⚠️
dimos/manipulation/demo_graspgenx/demo.py 83.33% 5 Missing and 5 partials ⚠️
dimos/manipulation/grasping/grasp_gen_x.py 90.82% 6 Missing and 4 partials ⚠️
dimos/manipulation/demo_graspgenx/render.py 93.26% 3 Missing and 4 partials ⚠️
dimos/msgs/manipulation_msgs/GraspCandidate.py 70.58% 4 Missing and 1 partial ⚠️
dimos/manipulation/demo_graspgenx/__main__.py 87.50% 1 Missing and 1 partial ⚠️
@@            Coverage Diff             @@
##             main    #3157      +/-   ##
==========================================
+ Coverage   74.96%   75.06%   +0.09%     
==========================================
  Files        1117     1128      +11     
  Lines      106875   107507     +632     
  Branches     9699     9739      +40     
==========================================
+ Hits        80123    80697     +574     
- Misses      23945    23976      +31     
- Partials     2807     2834      +27     
Flag Coverage Δ
OS-ubuntu-24.04-arm 68.68% <91.71%> (+0.14%) ⬆️
OS-ubuntu-latest 70.76% <91.71%> (+0.12%) ⬆️
Py-3.10 70.76% <91.71%> (+0.12%) ⬆️
Py-3.11 70.75% <91.71%> (+0.12%) ⬆️
Py-3.12 70.76% <91.71%> (+0.12%) ⬆️
Py-3.13 70.76% <91.71%> (+0.12%) ⬆️
Py-3.14 70.76% <91.71%> (+0.12%) ⬆️
Py-3.14t 70.76% <91.71%> (+0.12%) ⬆️
SelfHosted-Large 29.28% <36.30%> (+0.04%) ⬆️
SelfHosted-Linux 35.82% <36.30%> (+<0.01%) ⬆️
SelfHosted-macOS 34.91% <36.30%> (+0.01%) ⬆️

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

Files with missing lines Coverage Δ
dimos/manipulation/demo_graspgenx/test_demo.py 100.00% <100.00%> (ø)
dimos/manipulation/demo_graspgenx/test_render.py 100.00% <100.00%> (ø)
dimos/manipulation/grasping/grasp_gen_spec.py 100.00% <100.00%> (ø)
dimos/manipulation/grasping/test_grasp_gen_x.py 100.00% <100.00%> (ø)
...imos/msgs/manipulation_msgs/GraspCandidateArray.py 100.00% <100.00%> (ø)
dimos/robot/all_blueprints.py 100.00% <ø> (ø)
dimos/manipulation/demo_graspgenx/__main__.py 87.50% <87.50%> (ø)
dimos/msgs/manipulation_msgs/GraspCandidate.py 70.58% <70.58%> (ø)
dimos/manipulation/demo_graspgenx/render.py 93.26% <93.26%> (ø)
dimos/manipulation/demo_graspgenx/demo.py 83.33% <83.33%> (ø)
... and 2 more

... and 3 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 Outdated
Comment thread dimos/manipulation/demo_graspgenx/fixtures/ycb_banana_scene.json Outdated
…posals

# Conflicts:
#	.github/workflows/release-build-check.yml
Comment thread bin/lfs_push
Comment thread .github/workflows/release-build-check.yml Outdated
Comment thread dimos/manipulation/grasping/legacy_grasp_gen_spec.py Outdated
Comment thread dimos/manipulation/grasping/grasp_gen_x.py Outdated
Comment thread dimos/manipulation/grasping/grasp_gen_x.py Outdated
Comment thread dimos/manipulation/grasping/grasp_gen_x.py Outdated
Comment thread dimos/manipulation/grasping/grasp_gen_x.py Outdated
Comment thread docs/capabilities/manipulation/index.md Outdated
Comment thread pyproject.toml Outdated
Comment thread pyproject.toml
@TomCC7
TomCC7 deleted the cc/feat/graspgenx-proposals branch July 29, 2026 03:12
@TomCC7

TomCC7 commented Jul 29, 2026

Copy link
Copy Markdown
Member Author

Rebased continuation: #3266 now carries the byte-equivalent changes on manip/grasp-sprint-july-26, rebased linearly onto current main. GitHub closed this PR when its head branch was renamed, because an existing PR head ref cannot be retargeted.

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