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

refactor(step-generation, protocol-designer): atomic command args to … #17324

Open
wants to merge 9 commits into
base: edge
Choose a base branch
from

Conversation

jerader
Copy link
Collaborator

@jerader jerader commented Jan 22, 2025

…match command params

AUTH-1361

Overview

This is Pt2 of refactoring the atomic command args to match command params. all the module atomic commands were updated in pt1 so this refactors the remaining atomic commands

Test Plan and Hands on Testing

smoke test PD, this is mainly step-generation though so if the cypress migration tests pass i think this is good to go.

Changelog

migrate all atomic commands args to match command params and clean up affected tests

Review requests

returnTip isn't an atomic command but i'm not sure if it's a compound command either since it is only called within a compound command. Makes me think we need a new category for it or that we need to better define the differences between atomic vs compound commands. I'll think about this more.

Risk assessment

med-ish but shouldn't affect any JSON files and commands emitted since its just refactoring the atomic command args

Comment on lines +25 to +28
export interface ExtendedAspirateParams extends AspDispAirgapParams {
tipRack: string
nozzles: NozzleConfigurationStyle | null
isAirGap?: boolean
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

tipRack and nozzles are needed for some timeline errors. isAirGap is to signify if the command is an aspirate air gap or not. Gonna investigate that more though because i don't see that meta key in the latest aspirate command schema args...

Copy link

codecov bot commented Jan 22, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 73.84%. Comparing base (0e7b516) to head (5ecf303).
Report is 14 commits behind head on edge.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             edge   #17324   +/-   ##
=======================================
  Coverage   73.84%   73.84%           
=======================================
  Files          43       43           
  Lines        3304     3304           
=======================================
  Hits         2440     2440           
  Misses        864      864           
Flag Coverage Δ
shared-data 73.84% <ø> (ø)

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

@jerader jerader marked this pull request as ready for review January 24, 2025 15:41
@jerader jerader requested a review from a team as a code owner January 24, 2025 15:41
@jerader jerader requested review from ddcc4, koji and ncdiehl11 January 24, 2025 15:41
Copy link
Contributor

@ddcc4 ddcc4 left a comment

Choose a reason for hiding this comment

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

Hm, this is a bit long for a code review, but I assume most of the changes are mechanical, and hopefully the CI tests should catch anything that broke structurally?

@@ -95,6 +95,7 @@ export const generateRobotStateTimeline = (
curryCommandCreator(moveToAddressableArea, {
pipetteId,
addressableAreaName,
offset: { x: 0, y: 0, z: 0 },
Copy link
Contributor

Choose a reason for hiding this comment

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

What is this for?

@@ -105,6 +106,8 @@ interface ReplaceTipArgs {
}

/**
TODO: need to move this out of atomic command since it breaks the rules of atomic commands. I don't
think it falls into the pattern of compount commands either though
Copy link
Contributor

Choose a reason for hiding this comment

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

Why doesn't it fit into the pattern of compound commands?

Also, compount -> compound.

Copy link
Collaborator Author

@jerader jerader Jan 24, 2025

Choose a reason for hiding this comment

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

you're right, it can just be moved to compound. I think i was overthinking it. I'll move it

@@ -254,7 +257,10 @@ export const replaceTip: CommandCreator<ReplaceTipArgs> = (
channels === 96 && args.nozzles != null && args.nozzles !== stateNozzles
? [
curryCommandCreator(configureNozzleLayout, {
nozzles: args.nozzles,
configurationParams: {
primaryNozzle: args.nozzles === COLUMN ? 'A12' : undefined,
Copy link
Contributor

Choose a reason for hiding this comment

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

Where does A12 come from?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

good question, it is the "default" primary nozzle for column pick up for a 96-channel. I'll use the constant we have for it instead of using the string.

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