sequencescape
sequencescape copied to clipboard
DPL-904 BIOSCAN manifest interim supplier sample name approach
As R&D (Scott T) I would like to identify a method to automate the supplier sample name prefix addition to the existing BIOSCAN manifests as it takes a considerable amount of time for faculty staff to generate and validate these prefixes in the current system.
Who are the primary contacts for this story Scott T (R&D) Emma B (R&D) Jemma S (BIOSCAN faculty)
Knowledge or Stake holders Jemma S (BIOSCAN faculty) Mara L (BIOSCAN faculty) Alex M (BIOSCAN faculty)
Acceptance Criteria In order to be successful, this story should:
Identify an interim approach to ‘automating’ supplier sample name prefix addition This could be entirely LIMS driven This could leverage Excel formulas to perform the prefix addition and LIMS to validate Other approach Identify a method that applies the same naming convention currently applied manually Designated lysate negative control type = lysate negative : supplier sample name set to CONTROL_NEG_LYSATE_<Sanger plate ID><Well> PCR negative control type = pcr negative : supplier sample name set to CONTROL_NEG<Sanger plate ID><Well> PCR positive control type = pcr positive : supplier sample name set to CONTROL_POS<Sanger plate ID><Well> Empty well control type = null AND (TAXON_ID = 2582415 OR common name = blank sample) : supplier sample name set toCONTROL_NEG_LYSATE<Sanger plate ID><Well> Sample control type = null AND (TAXON_ID = 32644 OR common name = unidentified): supplier sample name set to <Sanger plate ID><Well> Require the user to input the minimal amount of sample information. Ideally this would be limited to: - Sanger Plate ID - Taxon ID - Control Type - Sanger Sample ID
Identify a method to validate the resulting manifest Estimate the time taken to develop the identified approach in order that it can be effort and value can be weighed against a longer term solution (User Story: BIOSCAN automated manifest generation and submission)
Additional context or information
This feature has been requested as the current method of sample manifest submission requires a considerable amount of manual editing to apply the necessary prefixes to supplier sample names for the control information in mBRAVE to be informative.
For completeness I have attached an email chain which contains the original request from BIOSCAN faculty. They have asked for this functionality since in other forums.
On 31 Aug 2023, at 11:27, Emma Betteridge <[email protected]> wrote: Hi all, We had a BIOSCAN working group on Tuesday and discussed that it would be useful to have a short guide on BIOSCAN controls with particular emphasis on how to annotate these on sample manifests. I’ve had a go at putting this together here - https://docs.google.com/document/d/1xfuXNLpUL4WIPuZtnq8UCt3WD71IQL4HR9BNmr-sp64/edit
I have based this on what we agreed during for the batch_7 manifest. Please add comments if you feel something is not correct or missing. Jemma and Mara, please let me know if this covers everything you would like to have documented or if there is other information you would like included. Thanks, Emma
Hi Scott, With Emma on leave, perhaps you can enlighten us. We are wondering about the process to add CONTROL_NEG_RANDOM to the prefix of the Well ID for any randomised negative control added by the Beckman. Alex is working on implementing addition of the required prefixes to CONTROL_POS to H12 and CONTROL_NEG_LYS to G12 wells and just wondered why this couldn’t be done alongside the addition of the randomised naming.
We can do it of course but wondering if it is more efficient and future proof to do it at the stage of specimen extractions? Thoughts? Best Mara
Hi Scott, Just to follow up on this, I'm wondering if the labelling of controls is intended to happen in two stages:
- first we label all of empty wells as CONTROL_NEG_LYSATE. And if G12 is empty, we label it as CONTROL_POS - and save it to BIOSCAN_SUPPLIER_SAMPLE_NAME column in STS. Then, this is propagated to supplier_sample_name column in sequencing manifest
- then, you (SciOps) pick up control info from supplier_sample_name field in sequencing manifest, add randomised CONTROL_NEG location, save this info somewhere in your LIMS, then pass on updated sample names (with all of CONTROL_NEG_LYSATE, CONTROL_POS, and CONTROL_NEG prefixes) to mBRAVE Does this make sense at all? Thank you, Alex
Hi Mara and Alex,
Mara, I believe that it should be possible to rename any empty wells when the Beckman robot transfers samples from the specimen plate (LILYS-96-Stock) to the lysate plate (LBSN-96 Lysate). I would need to submit a research story to the Production Software Development (PSD) team to see if this is feasible though.
This feature would apply the name change for samples submitted in specimen plates, but not for samples submitted in lysate plates, which would still require you to make the changes in the sample manifest.
Alex, I’m not familiar with STS and how it feeds into the sample manifest, but the control labelling does effectively happen in two stages for samples submitted in specimen plates, but only one stage for samples submitted in lysate plates.
The ‘supplier sample name’ is used by mBRAVE to determine controls, the ‘sample type’ is used by our LIMS (Limber) to determine controls, which are displayed to the lab user as well as for manifest validation.
The ‘supplier sample name’ is passed through Limber and is used in a Limber-generated script which produces the UMI file to be uploaded to mBRAVE.
Apologies if this does not answer your question directly Alex, I have provided some more detail on the only current method for assigning control names in the Minimum Viable Product LIMS for BIOSCAN:
Currently faculty need to fill in the empty wells with the CONTROL_NEG_LYSATE prefix in order for them to be ultimately reportable as lysate controls in mBRAVE.
I am not sure if it is a requirement of the manifest to have unique supplier sample names for each row, but I think it would make for easier reporting if we could name the empty wells with the prefix and the plate and well e.g. CONTROL_NEG_LYSATE_FRBX_001_A1.
For samples submitted in specimen plates (LILYS-96-Stock) for extraction the ‘sample type’ column should be changed to ‘lysate negative’ for well H12 only. (We could discuss removing the H12 only validation requirement, but we would need to establish the LIMS impact).
During the extraction process the robot will add a ‘PCR positive’ control to well G12, the ‘sample type’ and ‘sample supplier name’ is updated in LIMS.
Also during this process a ‘PCR negative’ replaces one of other sample locations and the ‘sample type’ and sanger supplier name is updated in LIMS.
Sample supplier names (including the added controls) are passed through our LIMS (Limber) and are used by a LIMS-generated script to generate a UMI file which is used in the submission to mBRAVE
For samples submitted in lysate plates (LBSN-96 Lysate) where controls are added manually, faculty would need to name the controls in the manifest with the mBRAVE specified prefix, plate and well location e.g. CONTROL_POS_FRBX_001_G12 and CONTROL_NEG_FRBX_001_D3.
The CONTROL_POS row needs to have ‘sample type’ set to ‘PCR positive’
The CONTROL_NEG row needs to have ‘sample type’ set to ‘PCR negative’
Sample supplier names are passed through our LIMS (Limber) and are used by a LIMS-generated script to generate a UMI file which is used in the submission to mBRAVE.
Please let me know if you require any more information or if anything is unclear.
Scott.
Hi Scott,
Thank you for the clarifications! Based on this I understand that we only need to add CONTROL_NEG_LYSATE_ prefix to ‘supplier sample name’ for empty wells on our side. If this is correct, I can see a potential issue with well G12 - in some older plates this well can contain real sample, while in newer plates it should be empty. How should we label the sample in each of those cases?
Also, just to see if we can simplify the process a bit: on our side, we are using different taxonomy for real samples and blanks when filling in the SequenceScape manifest:
- real samples are submitted as 'unidentified', TAXON_ID 32644
- blank samples are submitted as 'blank sample', TAXON_ID 2582415
Would it be possible to use this information from SequenceScape manifest to apply all of the prefixes on your side? I.e:
- CONTROL_NEG_LYSATE - anything with COMMON_NAME as 'blank sample' / TAXON_ID 2582415, with the exceptions below:
- CONTROL_POS - well G12 (only if it was blank? or in any case?)
- CONTROL_NEG - randomised control introduced by the robot (only if the original sample was not blank) Let me know what you think. Alex
Hi Alex, That’s correct, you only need to add CONTROL_NEG_LYSATE_ prefix to ‘supplier sample name’ for empty wells. If there is a sample in G12, that shouldn’t be an issue:
If you are submitting a specimen plate, then well G12 will not be transferred on the robot, a PCR positive will be added to that well in the destination plate by the robot and assigned in LIMS If you are submitting a lysate plate, then DNAP will not add a positive control to that plate. The manifest does not require a positive control at G12, you could put a PCR positive, PCR negative, or sample in any well except H12. The manifest validation script checks that: if there is a ‘sample type’ of ‘lysate negative’ that must be in H12 If there is a ‘PCR positive’ or ‘PCR negative’ it cannot be in H12 every control defined in sample type has a ‘CONTROL_’ prefix in the supplier name
I don’t know how much work it is to write code to amend the manifest file to add prefixes (PSD also may want to avoid doing that) I will submit a research story to PSD. In the interim, this functionality could be available in Excel, however I’m not sure if the manifest itself will allow you to add the required calculation. Do you know if you are able to add calculations to the name column?
Scott.
From Scott T: Faculty are happy to drop this request as it was an interim solution to aid in manifest submission. They have subsequently made their own scripts to help automate the task, making this story redundant.
Closing and archiving.
@TWJW-SANGER @andrewsparkes @KatyTaylor moving this to Done column based on above comments.