strateos/transcriptic

stamp 0uL with mix is removed

scottbecker opened this issue · 1 comments

Currently, you are required to specify a volume greater than 0uL even if you want to use the stamp operation only to mix.

This is because, if you specify 0uL, the stamp operation is removed from the autoprotocol output.

e.g. the following will not produce a stamp operation in the resulting autoprotocol but it should.

p = Protocol()

plate = p.ref("plate1", cont_type="96-pcr", storage="cold_4", discard=False)
wells = get_column_wells(plate, range(1,6))

p.provision_by_name(Reagent.water, wells, ul(160))

p.stamp(wells[0], 
        wells[0],
        ul(0),
        shape={'rows':8, 'columns':5},
        mix_before=True,
        mix_vol=Unit(80,'microliter'),
        repetitions=20)

You can achieve this type of mixing using the current syntax by changing the stamp volume in your example above to 80 microliters (to match your mix volume). Since the source and destination are the same, this will essentially serve as an additional mix repetition.

If you have any ideas about how to clarify and/or simplify this functionality, I would encourage you to consider submitting a pull request to our autoprotocol-utilities repository at: https://github.com/autoprotocol/autoprotocol-utilities

Thank you!