fix(app): Fix "retry new tips" during Error Recovery overpressure flow #15993
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes RQA-2989
Overview
Drop tip wizard's tip detection logic comprised of checking the sensors and checking the protocol analysis. Recently, we dropped the sensor detection and now rely purely on protocol analysis. Doing so exposed a bug: based on the way command fetching works out of post-run drop tip wizard, we can't always tell during a run in progress if tips are attached without writing extensive special-case logic for error recovery or performing questionably large network requests for command data, so when error recovery tries to do recovery flows involving drop tip wizard, it doesn't know which pipette we care about.
A reasonable alternative is something we should have anyway as it creates error boundaries around error recovery:
failedPipetteInfo
, so we can just use it here).failedPipetteInfo
).f1bdba2 - After solving the white screen issue, I realized I never pushed the commit in a previous PR that actually made use the pipette's natural id to #15970. Woops. This is necessary for any of the commands to work within error recovery, and I'm including it here, because both these commits are required to make it useable!
Test Plan and Hands on Testing
Changelog
Risk assessment
low