nf-core / nf-core/seqsubmit

Support submission of MAGs/bins generated from co-assemblies

Open
#96 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement genome_submit
Dominant language
Nextflow
Stars
18
Forks
8
PR merge metrics
No merged PRs in 30d

Description

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 #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.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the mags and bins modes in docs/usage.md, then read the equivalent assembly solution in PR #66. Trace assets/schema_input_genome.json, workflows/genomesubmit.nf, and the module preparing TSV input for genome_uploader; inspect existing nf-test patterns. Done means multi-accession MAG/bin submission is covered by test data and an nf-test case, with the documented limitation updated.

Written by the indexing model from the issue text.

Assessment

Domain
data
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.