Skip to content

Support submission of MAGs/bins generated from co-assemblies #96

Open

Description

@ochkalova

Difficulty: Hard

Why this matters: the pipeline submits MAGs and bins to ENA (European Nucleotide Archive). This is the other half of the co-assembly problem, on the MAGs/bins side (see issue #61 for the equivalent problem on the metagenomic assemblies side). Each row in the genome samplesheet currently references exactly one accession (the single run or assembly it came from). If your MAG or bin actually came from a co-assembly of several runs, there's no way to list more than one. The samplesheet already has a co-assembly column, but today it's just metadata that gets uploaded, it doesn't change how the pipeline handles the accession.

Some terms: ENA (European Nucleotide Archive) is the public repository this pipeline submits data to. A co-assembly is when reads from several sequencing runs are assembled together into one set of contigs, instead of each run being assembled on its own. genome_uploader is the external tool the pipeline wraps to actually register MAGs/bins with ENA.

Skills / experience: Nextflow, being comfortable reading a similar solution in another part of the codebase and adapting it. nf-test (see the nf-core nf-test testing guide if this is new to you).

Suggested approach:

  1. Read the mags and bins modes section of docs/usage.md.
  2. Read how the equivalent problem was solved for assemblies in PR Feature: co-assemblies submission with --mode metagenomic_assembly #66, since the same pattern should carry over here.
  3. Update assets/schema_input_genome.json so the accession column accepts semicolon-separated values.
  4. Update the meta construction and the coverage calculation module call in workflows/genomesubmit.nf to handle multiple accessions/reads.
  5. genome_uploader already supports linking one MAG to more than one source run or assembly, but you will have to update module that prepares TSV input file for the genome_uploader.
  6. Add test data and an nf-test case (see the nf-core nf-test testing guide if this is new to you).
  7. Update the limitations section of docs/usage.md.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions