sanger / sequencescape

Web based LIMS
MIT License
85 stars 33 forks source link

GPL-356 As Development team (LIMS) we want to automatically create samples and their metadata in Sequencescape for heron samples to automate this high throughput process #2574

Closed stevieing closed 1 month ago

stevieing commented 4 years ago

User story As a development team when we receive a request from the csv parser to create a tube rack we want to create a tube rack, with the specified number of sample tubes and samples

Who the primary contacts are for this story e.g. Eduardo

Acceptance criteria To be considered successful the solution must allow: 1 - A tube rack will be created with the specified tube rack barcode that is sent in the request from csv parser 2 - The correct number of tubes will be created which will each have a sample, tube barcode and a position (rack location) 3 - Each sample created will have sample name, supplier sample name and the sample public name in sample metadata populated from the original tube barcode from the MLWH e.g. PHEC-nnnnnnnnnnnnn

    • All of required sample metadata will be populated with default data as it is not available.
emrojo commented 4 years ago

Tasks:

Create factories similar to how it was in app/aker/factories

emrojo commented 4 years ago

Proposal of message payload received by heron/tube_rack endpoint

{
  "data": {
    "attributes": {
       "tube_rack": {
          "barcode": "0000000001",
          "size": 96,
          "tubes": [
            {
              "location": "A01",
              "barcode": "FD00000001",
              "supplier_sample_id": "PHEC-nnnnnnn1"
            },
            {
              "location": "A02",
              "barcode": "FD00000002",
              "supplier_sample_id": "PHEC-nnnnnnn2"
            }
          ]
       }
    } 
  }
}
emrojo commented 4 years ago

Required headers: X-Sequencescape-Client-Id: Accept: application/vnd.api+json Content-Type: application/vnd.api+json

emrojo commented 4 years ago

About acceptance criteria 3: the sample name has to be unique. That means that we cannot have 2 samples with same supplier_sample_id. My proposal is to use sanger_sample_id instead

rl15 commented 4 years ago

Yes that’s correct.

I think we can also stop populating the public name:

On 21/03/2020, 09:30, "David K. Jackson" <david.jackson@sanger.ac.uk wrote:

we may want to revisit the use of public_sample_name if downstream [of NPG] have the capability to accept this ID separately (that would allow us to propagate say an NPG id with the sequence data, provide the phx_sample_id separating - makes for far like confusing data fixes).

On 21/03/2020, 10:14, "David K. Jackson" david.jackson@sanger.ac.uk wrote:

it's just I think downstream will have mechanism to import our supplier_sample_name rather than rely on us putting it in the CRAM header and renaming files to match.