Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@FriederikeHanssen
Copy link
Contributor

Summary

  • When starting from --step variant_calling with BAM files that include a lane column in the samplesheet, FilterMutectCalls silently does not run, causing variants to not be annotated/filtered
  • Root cause: meta.id was set to sample-lane (e.g., "PM10_P0-1") in samplesheet parsing, but the Mutect2 tumor-only subworkflow resets the pileup/contamination ID to meta.sample (e.g., "PM10_P0"), causing .join() mismatches that produce empty channels
  • Fix: only use lane-based IDs for the mapping step; for all other steps use the sample-based ID

Fixes the issue where removing the lane field from the samplesheet was the only workaround.

Test plan

  • Run tumor-only Mutect2 from --step variant_calling with BAM input with lane field in samplesheet — verify FilterMutectCalls runs
  • Run tumor-only Mutect2 from --step variant_calling with BAM input without lane field — verify no regression
  • Run from --step mapping with BAM input with lane field — verify alignment still uses lane-based IDs
  • Run nf-core pipeline tests

🤖 Generated with Claude Code

When starting from `--step variant_calling` with BAM files that include a
`lane` column in the samplesheet, the meta.id was set to `sample-lane`
(e.g. "PM10_P0-1"). However, the Mutect2 tumor-only subworkflow resets
the ID to `meta.sample` (e.g. "PM10_P0") at the pileup/contamination
step. This mismatch caused the `.join()` to produce an empty channel,
so FilterMutectCalls silently never ran.

The fix uses lane-based IDs only for the mapping step (where lanes are
processed separately). For all other steps, the sample-based ID is used,
ensuring consistent ID matching in downstream channel joins.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
Co-Authored-By: Claude Opus 4.6 <[email protected]>
@nf-core-bot
Copy link
Member

Warning

Newer version of the nf-core template is available.

Your pipeline is using an old version of the nf-core template: 3.5.1.
Please update your pipeline to the latest version.

For more documentation on how to update your pipeline, please see the nf-core documentation and Synchronisation documentation.

@github-actions
Copy link

github-actions bot commented Feb 6, 2026

nf-core pipelines lint overall result: Passed ✅ ⚠️

Posted for pipeline commit c5ac309

+| ✅ 223 tests passed       |+
#| ❔  13 tests were ignored |#
!| ❗   8 tests had warnings |!
Details

❗ Test warnings:

  • nextflow_config - Config manifest.version should end in dev: 3.8.0
  • pipeline_todos - TODO string in base.config: Check the defaults for all processes
  • pipeline_todos - TODO string in main.nf: Optionally add in-text citation tools to this list.
  • pipeline_todos - TODO string in main.nf: Optionally add bibliographic entries to this list.
  • pipeline_todos - TODO string in main.nf: Only uncomment below if logic in toolCitationText/toolBibliographyText has been filled!
  • schema_lint - Input mimetype is missing or empty
  • schema_description - No description provided in schema for parameter: markduplicates_pixel_distance
  • schema_description - No description provided in schema for parameter: gatk_pcr_indel_model

❔ Tests ignored:

✅ Tests passed:

Run details

  • nf-core/tools version 3.5.1
  • Run at 2026-02-09 09:43:27

Copy link
Member

@maxulysse maxulysse left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@FriederikeHanssen FriederikeHanssen merged commit 5c602ea into dev Feb 9, 2026
43 checks passed
@maxulysse maxulysse deleted the lane-variantcalling branch February 9, 2026 10:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants