Carterra slot 4 PR split

Source branch: saahas/carterra-slot4 Base branch: main Source PR: https://github.com/medra-ai/medra_robotics/pull/12659

Source commits

  1. 82cdad2b5a feat(carterra): add bay-4 plate slot with a per-bay grasp and approach
  2. c9c29c8d1a feat(carterra): support robot loading for bay 4
  3. 40c8f4243f refactor(carterra): simplify fast waypoint calibration
  4. 24e7d69184 fix(ml1-010): remove absent deck camera
  5. b20d697fa7 fix(carterra): expose bay 4 in protocol editors
  6. 28980d2279 carterra all plates at 75
  7. 217521ff2b fix(carterra): tune plate calibration heights
  8. 9217a43276 fix(carterra): prompt for calibration slot
  9. 3b9e8f0a76 fix(carterra): stage calibration plate within reach
  10. d1b62ea78a refactor(carterra): flatten calibration slot selection
  11. f8f0ec38c6 test(carterra): type slot selector callback
  12. 28d2f2edd4 fix(carterra): expose door calibration target
  13. a650df5731 refactor(carterra): standardize plate motions
  14. 272b67c962 fix(carterra): raise and flip plate grasp
  15. 5c5ce60e17 fix(carterra): restore camera-up plate grasp
  16. d80780e2b7 fix(carterra): preserve tested plate and door heights
  17. 2493f39466 fix(carterra): preserve left door sweep
  18. 195e8a843d fix(carterra): lift before calibration retreat
  19. 33cc292635 calibrated waypoints for slot 2 and 3, half calibrated wp for 4
  20. 8da0eeb4d1 refactor(carterra): unify plate interaction policy
  21. 9cf3580851 feat(carterra): mirror Gator plate selection

The new commits use the final source-branch files. The source commits mix concerns and contain intermediate calibration states.

Cuts

  1. Exclude all ml1-014 changes because that deck has no completed waypoint calibration.
  2. Exclude temporary probe, demo, and handoff files that earlier source commits already removed.
  3. Keep the ml1-010 camera removal. It is correct and belongs with the deck configuration changes.

PR 1

Title: refactor(protocol-editor): share the plate-slot picker Link: https://github.com/medra-ai/medra_robotics/pull/12881 Size: 344 additions, 280 deletions.

Source: cleaned 9cf3580851.

Files:

  • The shared plate-slot picker in both protocol editors.
  • The Gator adapters in both protocol editors.

Blast radius: both protocol editors. The Gator behavior stays the same.

PR 2

Title: feat(carterra): load plates through bay 4 Link: https://github.com/medra-ai/medra_robotics/pull/12882 Size: 354 additions, 108 deletions.

Sources: cleaned 82cdad2b5a, c9c29c8d1a, 28980d2279, a650df5731, 272b67c962, 5c5ce60e17, d80780e2b7, 2493f39466, and 8da0eeb4d1.

Files:

  • The Protoscript contract and generated types.
  • The Carterra slot policy, task planner, robot motion, and simulation geometry.
  • The Carterra planning and simulation tests.
  • The load-and-unload test script and knowledge files.

Blast radius: all Carterra decks.

PR 3

Title: feat(fast-waypoints): calibrate Carterra bays and doors Link: https://github.com/medra-ai/medra_robotics/pull/12883 Size: 474 additions, 40 deletions.

Sources: cleaned 82cdad2b5a, c9c29c8d1a, 40c8f4243f, 9217a43276, 3b9e8f0a76, d1b62ea78a, f8f0ec38c6, 28d2f2edd4, 195e8a843d, and 8da0eeb4d1.

Files:

  • medra_robotics/scripts/calibration/fast_waypoints.py
  • medra_robotics/tests/test_carterra_fast_waypoints.py
  • The required knowledge note.

Blast radius: Carterra waypoint calibration.

PR 4

Title: fix(ml1-010): update Carterra waypoints and remove the absent camera Link: https://github.com/medra-ai/medra_robotics/pull/12884 Size: 263 additions, 53 deletions.

Sources: cleaned 24e7d69184, 28980d2279, 217521ff2b, a650df5731, 272b67c962, 5c5ce60e17, d80780e2b7, 2493f39466, and 33cc292635.

Files:

  • The ml1-010 Carterra waypoint file.
  • The new ml1-010 M6D and M6E holder waypoint files.
  • The ml1-010 hardware list and camera configuration.
  • The required knowledge note.

Blast radius: ml1-010 only.

PR 5

Title: feat(protocol-editor): assign Carterra plates to bays Link: https://github.com/medra-ai/medra_robotics/pull/12885 Size: 330 additions, 57 deletions.

Sources: cleaned b20d697fa7 and 9cf3580851.

Files:

  • The Carterra plate-slot adapters in both protocol editors.
  • The Carterra action editors and removed-container cleanup.
  • The Carterra picker behavior test and required knowledge note.

Blast radius: both protocol editors.

Merge order

Merge PRs 1 through 5 in order. Each PR uses the preceding PR as its base.

Execution checklist

  1. Create each branch from the preceding PR branch.
  2. Restore only the final source files for that PR.
  3. Add the required knowledge entry.
  4. Run the relevant lint, type, generation, and behavior tests.
  5. Push the branch and create the PR.
  6. Change the next PR base to the preceding PR branch.
  7. Close PR 12659 after the five new PRs exist.