Skip to content

feat(rldb): heterogeneous u_socket action support - #566

Draft
ElmoPA wants to merge 1 commit into
graphite-base/566from
rldb/usocket-hetero
Draft

feat(rldb): heterogeneous u_socket action support#566
ElmoPA wants to merge 1 commit into
graphite-base/566from
rldb/usocket-hetero

Conversation

@ElmoPA

@ElmoPA ElmoPA commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Adds what a U-socket pusher needs alongside the 2-D circle embodiments:

  • embodiment: pin PUSHSHAPES_SIM_U_SOCKET = 19. 18 was HUMAN_BIMANUAL under
    the pre-collapse numbering and the existing u_socket datasets/checkpoints
    (the bf__u3 2026-08 lineage) already encode 19.
  • transforms: ThetaToRotVec / RotVecToTheta, so an angle is carried as
    (cos, sin) and cannot wrap discontinuously during training; the revert is
    needed because env.step still wants a 3-dim u_socket action.
  • pushshapes: get_keymap_with_pusher_cmd + the rotvec transform lists.
  • stages_flow: generalise pusher_hold from hardcoded 2-D xy to a
    D-dimensional pose (state[:, :Dd]), with a guard that raises when the state
    carries fewer coordinates than the action, instead of silently padding from
    the wrong columns.
  • pl_data_utils: route packed datasets through pack_collate, which emits
    cu_seqlens, rather than the configured collate_fn.

Adds what a U-socket pusher needs alongside the 2-D circle embodiments:

- embodiment: pin PUSHSHAPES_SIM_U_SOCKET = 19. 18 was HUMAN_BIMANUAL under
  the pre-collapse numbering and the existing u_socket datasets/checkpoints
  (the bf_*_u3* 2026-08 lineage) already encode 19.
- transforms: ThetaToRotVec / RotVecToTheta, so an angle is carried as
  (cos, sin) and cannot wrap discontinuously during training; the revert is
  needed because env.step still wants a 3-dim u_socket action.
- pushshapes: get_keymap_with_pusher_cmd + the rotvec transform lists.
- stages_flow: generalise pusher_hold from hardcoded 2-D xy to a
  D-dimensional pose (state[:, :Dd]), with a guard that raises when the state
  carries fewer coordinates than the action, instead of silently padding from
  the wrong columns.
- pl_data_utils: route packed datasets through pack_collate, which emits
  cu_seqlens, rather than the configured collate_fn.
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