Skip to content

Conversation

@ryanthecoder
Copy link
Contributor

@ryanthecoder ryanthecoder commented Nov 24, 2025

Overview

This PR encompases a first pass implementation of allowing dynamic tracking with liquid classes. As is there is no super convenient way for users to use it, no default selection for any current liquid classes and is defaulted to None everywhere.

But as a first pass this does add a few new features

  • TipPosition has split LIQUID_MENISCUS into LIQUID_MENISCUS_START and LIQUID_MENISCUS_END to match the implementation with the standard aspirate and dispense options
  • Adds a Schema 2 liquid class which adds aspirate_end_position and dispense_end_position as optional members of the liquid class
  • Enables the use of dynamic tracking in liquid classes for the gravimetric protocol which will be part of another PR and the minimal implementation of that is enabled for testing

@codecov
Copy link

codecov bot commented Nov 24, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 25.19%. Comparing base (141e6cb) to head (19ea952).
⚠️ Report is 1 commits behind head on edge.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##             edge   #20232       +/-   ##
===========================================
- Coverage   56.38%   25.19%   -31.19%     
===========================================
  Files        3623     3623               
  Lines      301011   300971       -40     
  Branches    42246    42196       -50     
===========================================
- Hits       169720    75841    -93879     
- Misses     131065   225114    +94049     
+ Partials      226       16      -210     
Flag Coverage Δ
protocol-designer 19.24% <ø> (ø)
step-generation 5.56% <ø> (+0.07%) ⬆️

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

Files with missing lines Coverage Δ
...n/opentrons_shared_data/liquid_classes/__init__.py 81.81% <ø> (-2.80%) ⬇️
...red_data/liquid_classes/liquid_class_definition.py 95.83% <ø> (-0.07%) ⬇️
...thon/opentrons_shared_data/liquid_classes/types.py 0.00% <ø> (ø)

... and 1808 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.

2 participants