refactor(api): Ensure we handle state updates even for failed commands #16461
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.
Overview
This goes towards EXEC-639 in general.
LabwareStore
, and most parts ofPipetteStore
, are now handling Protocol Engine state updates according to EXEC-639. However, in some places, they are only doing that when a command succeeds. They ought to also do it when the command fails with a defined error.I don't think that has caused any problems so far, but it seems like something that would trip us up as we continue adding more defined errors and as we continue with EXEC-639.
So this PR tries to set a pattern for consistently handling both the success and failure cases.
Test Plan and Hands on Testing
Existing automated unit tests.
Review requests
None.
Risk assessment
Low.