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(app, step-generation): visualize the step timeline and deck state of a protocol #15491

Merged
merged 73 commits into from
Jul 2, 2024

Conversation

b-cooper
Copy link
Contributor

@b-cooper b-cooper commented Jun 21, 2024

Overview

Create an experimental tool, behind a feature flag, that allows users to inspect the timeline of
atomic commands and the resulting deck state of the robot at ever frame of the timeline.

NOTE: This is for Flex only and also does not yet support the 96-channel

Demo:

Screen.Recording.2024-06-26.at.16.13.49.mov

co-authored by @jerader

Turn on the Protocol timeline feature flag and click on the "go to timeline" button from the protocol overflow menu of a Flex protocol with no 96-channel.

Risk assessment

low, behind a feature flag

b-cooper and others added 30 commits June 9, 2022 16:30
Add JSON protocol schema 8, which is similar in semantic concept to json
protocol schema 7 but
- Requires user specification of the schema for the command List
This allows json protocols to switch which commands they're interning
without requiring further bumps to the protocol schema
- Does the same thing for command annotations, liquids, and labware
For the same reasons.

This should be a big step forward in flexibility for our protocol schemas.
Copy link
Contributor

Choose a reason for hiding this comment

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

probably exporting functions (PipetteMountViz etc) would make things easy. (testing and maintaining)

Copy link
Collaborator

Choose a reason for hiding this comment

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

good call, i'll separate them out!

@jerader jerader requested a review from koji July 1, 2024 19:04
app/src/App/DesktopApp.tsx Outdated Show resolved Hide resolved
@koji
Copy link
Contributor

koji commented Jul 1, 2024

@jerader

Screenshot 2024-07-01 at 4 33 43 PM

I guess the space between deck map and timeline in the screenshot is smaller than the screen captures you posted.
Have you changed anything on that?

Copy link
Contributor

Choose a reason for hiding this comment

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

If there any specific reason, using the same name for component name and .tsx file name.

@koji
Copy link
Contributor

koji commented Jul 1, 2024

@jerader

The error message came from step-generation/src/getNextRobotStateAndWarnings/dispenseUpdateLiquidState.ts.
It appears that you were the last person to edit the file. Do you have any idea to solve this error message or is this expected message?

Screenshot 2024-07-01 at 4 47 38 PM

@koji
Copy link
Contributor

koji commented Jul 1, 2024

nit
maybe adding arrow icon (up/down) next to mount can be user-friendly.

Screenshot 2024-07-01 at 4 55 25 PM

@koji
Copy link
Contributor

koji commented Jul 1, 2024

warning

Screenshot 2024-07-01 at 4 59 52 PM

seems that wait_for_duration gets warning because of L361. message can be undefined.
if message == null, passing '' or something temporarily and leave a comment?

<LegacyStyledText as={as} {...styleProps}>
  {t('wait_for_duration', { seconds, message })}
</LegacyStyledText>

@jerader
Copy link
Collaborator

jerader commented Jul 1, 2024

nit maybe adding arrow icon (up/down) next to mount can be user-friendly.

Screenshot 2024-07-01 at 4 55 25 PM

@koji thanks for this! i'm gonna do a follow up pr to refine things a bit and will address this then.

Copy link
Contributor

@koji koji left a comment

Choose a reason for hiding this comment

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

left a few comments.
the changes look good to me.

if you can issue tickets to follow up some tests, that will be helpful for us.

@jerader jerader merged commit c95b61b into edge Jul 2, 2024
33 checks passed
@jerader jerader deleted the skunk_grouped-steps-timeline-scrubber-pd-window branch July 2, 2024 12:05
aaron-kulkarni pushed a commit that referenced this pull request Jul 3, 2024
…e of a protocol (#15491)

Create an experimental tool, behind a feature flag, that allows users to
inspect the timeline of
atomic commands and the resulting deck state of the robot at ever frame
of the timeline.

NOTE: This is for Flex only and also does not yet support the 96-channel

Co-authored-by: Seth Foster <[email protected]>
Co-authored-by: Max Marrone <[email protected]>
Co-authored-by: Jethary <[email protected]>
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.

None yet

5 participants