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(shared-data, app): add configureNozzleLayout command type in run log #13961

Merged
merged 6 commits into from
Nov 15, 2023

Conversation

smb2268
Copy link
Contributor

@smb2268 smb2268 commented Nov 9, 2023

Overview

This PR adds support for the configureNozzleLayout command in run log

Test Plan

  1. Upload a partial-tip pickup protocol (you can find some here: https://github.com/Opentrons/test-protocols/tree/main/abr_testing/96_channel_partial_tip_protocols)
  2. Start setup for the protocol and see that there will be an item in Run Log for the configureNozzleLayout command and that pickup tip commands now print a range of wells dependent on how many nozzles are being used at that time

Changelog

  1. Add configureNozzleLayout command type and supporting types
  2. Add a string for this command in CommandText
  3. Update pickUpTip command text to use new util getWellRange that will return the range of wells that a pipette is going to pick up tips from based on the number of nozzles the pipette is currently using

Review requests

Look through util and rest of code for sanity and test this out if you can!

Risk assessment

Low

@smb2268 smb2268 self-assigned this Nov 9, 2023
@smb2268 smb2268 requested review from a team as code owners November 9, 2023 20:41
@smb2268 smb2268 changed the title App partial tip run log feat(shared-data, app): add configureNozzleLayout command type in run log Nov 9, 2023
Copy link

codecov bot commented Nov 9, 2023

Codecov Report

Merging #13961 (5c77e4f) into edge (e117a19) will decrease coverage by 0.02%.
Report is 1 commits behind head on edge.
The diff coverage is 18.51%.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             edge   #13961      +/-   ##
==========================================
- Coverage   70.75%   70.73%   -0.02%     
==========================================
  Files        2506     2507       +1     
  Lines       70663    70694      +31     
  Branches     8679     8693      +14     
==========================================
+ Hits        49996    50006      +10     
- Misses      18543    18560      +17     
- Partials     2124     2128       +4     
Flag Coverage Δ
app 67.82% <18.51%> (-0.07%) ⬇️
protocol-designer 45.83% <ø> (ø)
shared-data 73.13% <ø> (ø)
step-generation 86.54% <ø> (ø)

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

Files Coverage Δ
...src/organisms/CommandText/PipettingCommandText.tsx 84.61% <100.00%> (+2.00%) ⬆️
app/src/organisms/CommandText/index.tsx 74.54% <0.00%> (-9.13%) ⬇️
...pp/src/organisms/CommandText/utils/getWellRange.ts 11.11% <11.11%> (ø)

... and 1 file with indirect coverage changes

export interface ConfigureNozzleLayoutRunTimeCommand
extends CommonCommandRunTimeInfo,
ConfigureNozzleLayoutCreateCommand {
result?: {}
Copy link
Collaborator

Choose a reason for hiding this comment

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

maybe add a TODO here to remind us to add a result type?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I was looking at the analysis output and the result was just an empty object - @sanni-t is that correct?

Copy link
Member

Choose a reason for hiding this comment

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

Yes, that's correct. The result is an empty object.

shared-data/command/types/setup.ts Outdated Show resolved Hide resolved
Comment on lines +197 to +200
interface ConfigureNozzleLayoutParams {
pipetteId: string
configuration_params: NozzleConfigurationParams
}
Copy link
Collaborator

Choose a reason for hiding this comment

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

Oh wait i didn't realize a pipetteId is needed in the params, I was looking at the implementation section on the proposal: https://opentrons.atlassian.net/wiki/spaces/RPDO/pages/3732602905?atlOrigin=eyJpIjoiMTQxNjBkYTBkYzhjNDM0YzgzMGY2YmEwMWZlOGY4NTMiLCJwIjoiY29uZmx1ZW5jZS1jaGF0cy1pbnQifQ

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I'm pretty sure it's necessary based on this https://github.com/Opentrons/opentrons/blob/edge/api/src/opentrons/protocol_engine/commands/configure_nozzle_layout.py#L33 - @sanni-t can you confirm whether the types I have here are correct?

Copy link
Member

Choose a reason for hiding this comment

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

Yep, pipette_id is required for knowing which pipette we are setting to partial nozzle configuration.

Copy link
Collaborator

@jerader jerader left a comment

Choose a reason for hiding this comment

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

lgtm, just pending the type questions for Sanniti. I left a comment about camelCasing a few things.

| typeof EMPTY

interface NozzleConfigurationParams {
primary_nozzle: string
Copy link
Collaborator

Choose a reason for hiding this comment

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

we probably want both primary_nozzle and configuration_params to be camelCase, like what we do for pipetteId

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think this would have to be a BE change, wouldn't it?

@sfoster1 sfoster1 changed the base branch from edge to chore_internal-release-1.0.0 November 12, 2023 14:20
@smb2268 smb2268 merged commit 1b3d680 into chore_internal-release-1.0.0 Nov 15, 2023
49 of 50 checks passed
@smb2268 smb2268 deleted the app_partial-tip-run-log branch November 15, 2023 16:03
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.

3 participants