Skip to content
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): Enable error recovery without the feature flag #15588

Merged
merged 7 commits into from
Jul 8, 2024

Conversation

SyntaxColoring
Copy link
Contributor

@SyntaxColoring SyntaxColoring commented Jul 5, 2024

Overview

Closes EXEC-547.

Test Plan

  • Flex protocols still enter recovery mode when there's a tip pickup or overpressure error, and still fail for other errors.
  • opentrons_simulate, local in-app analysis, and robot-side analysis still work as expected when the protocol has an error.
  • OT-2 protocols still fail, without entering recovery mode, when there's an error.

Changelog

  • Stop gating error recovery behind the enableErrorRecoveryExperiments feature flag.

    The feature flag doesn't do anything anymore. I'm leaving it in-place in case we want to use it for the ongoing work in liquid level detection.

  • For things other than real robot-server protocol runs (including analysis, opentrons_execute, maintenance runs, etc.), explicitly choose a policy of "never recover."

    We don't ever want to enter recovery mode for these things, because nothing could bring it out of recovery mode, and it would hang forever.

  • Explicitly disable error recovery on the OT-2. None of the designs for the upcoming release make sense on an OT-2, because the OT-2 lacks the hardware feedback to detect the errors in the first place.

Review requests

  • I looked around for a frontend feature flag but I couldn't find one. Have we already removed it?
  • Anyone have thoughts on what error recovery policy is appropriate for stateless commands (the "default orchestrator", in this code)?

Risk assessment

Medium.

@SyntaxColoring SyntaxColoring requested a review from a team July 5, 2024 21:34
@SyntaxColoring SyntaxColoring requested a review from a team as a code owner July 5, 2024 21:34
@SyntaxColoring SyntaxColoring changed the title feat(api): Remove error recovery feature flag; turn it on by default feat(api): Enable error recovery without the feature flag Jul 5, 2024
Copy link
Member

@sfoster1 sfoster1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code looks good to me, haven't tested though. I think never_recover is appropriate for stateleess command execution.

@SyntaxColoring SyntaxColoring merged commit fca049d into edge Jul 8, 2024
16 checks passed
@SyntaxColoring SyntaxColoring deleted the remove_error_recovery_ff branch July 8, 2024 15:41
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