-
Notifications
You must be signed in to change notification settings - Fork 179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(api): return machine appropriate deck slot names in PAPIv2 #12595
Conversation
Codecov Report
@@ Coverage Diff @@
## edge #12595 +/- ##
==========================================
+ Coverage 73.31% 73.56% +0.24%
==========================================
Files 1506 2271 +765
Lines 49367 62467 +13100
Branches 2998 6644 +3646
==========================================
+ Hits 36192 45952 +9760
- Misses 12719 14931 +2212
- Partials 456 1584 +1128
Flags with carried forward coverage won't be shown. Click here to find out more.
|
…AB-337_return_deck_coordinates
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lookin' good so far!
…AB-337_return_deck_coordinates
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice. Thanks for figuring out how to split this into an individually mergeable piece. Here are a couple of small things, but other than these, this looks good to merge.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Recapping from an in-person between me and @jbleon95, for posterity:
We're basically integration-testing the Python Protocol API through robot-server here. We're doing this because I don't know what the proper way to do this is, these days. But this is almost certainly not it. We should keep thinking about how to do this better.
api/src/opentrons/protocol_api/core/legacy/legacy_module_core.py
Outdated
Show resolved
Hide resolved
Merging to incorporate #12595.
Overview
Closes RLAB-337.
This PR makes it so that any call to a public facing Python method that previously would return a string for the deck slot (e.g.
"1"
,"2"
,"3"
, etc) now will return a deck coordinate ("A1"
,"A2"
"A3"
, etc) when analyzing/running on a Flex machine. When on an OT-2, previous behavior will be kept.In practice this only covers the two
parent
properties,Labware.parent
andModuleContext.parent
. TheDeck
class also has methods that return slot definitions that at reference slot ids, but those are reliant on the deck definition, which is covered in PR #12571.Test Plan
Tested the following protocol passes analysis and runs on a robot
Changelog
Labware.parent
andModuleContext.parent
to return deck coordinates when running on FlexDeckSlotName
tostr
conversions that were unclearrobot_type
property to protocol coresot3_only
were never getting run on CIReview requests
Risk assessment
Medium. This PR does not change behavior on the OT-2, but any protocol that relies on any of the above methods may not function as they did previous to this PR.