Fix PI0.5 raw rotation action encoding - #483
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
2c66921 to
59729c4
Compare
59729c4 to
bee8d0b
Compare
bee8d0b to
79dae92
Compare
Preserve physical YPR angles when converting normalized Cartesian actions to 6D rotation targets so PI training does not learn rotations from normalized Euler coordinates. Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the new PI0.5 encoding simple by dropping the version suffix and failing fast when a converter does not implement raw-rotation packing. Co-authored-by: Cursor <cursoragent@cursor.com>
Clone normalized actions before unnormalization and assert the decoded bimanual action shape before applying non-rotation unnormalization. Co-authored-by: Cursor <cursoragent@cursor.com>
5b6e729 to
322d105
Compare
Claude Code ReviewReview: PR #483 — Fix PI0.5 raw rotation action encodingSummaryAdds a new Key concerns
Suggestions
Verdict: Request ChangesThe converter logic and tests look solid, and preserving raw YPR through the 6D encoding is the right fix. But I need confirmation (in the diff or a follow-up comment) that:
Once those two are addressed (with tests + checkpoint versioning), happy to approve. Reviewed by Claude · Review workflow |

Fix PI0.5 raw rotation action encoding
Preserve physical YPR angles when converting normalized Cartesian actions to 6D rotation targets so PI training does not learn rotations from normalized Euler coordinates.
Co-authored-by: Cursor cursoragent@cursor.com
Tighten raw rotation action encoding
Keep the new PI0.5 encoding simple by dropping the version suffix and failing fast when a converter does not implement raw-rotation packing.
Co-authored-by: Cursor cursoragent@cursor.com
Harden raw rotation action handling
Clone normalized actions before unnormalization and assert the decoded bimanual action shape before applying non-rotation unnormalization.
Co-authored-by: Cursor cursoragent@cursor.com