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

Skip to content

Fix consensus calling to include all variant callers#2096

Merged
FriederikeHanssen merged 24 commits intodevfrom
fix-consensus-calling-missing-tools
Jan 18, 2026
Merged

Fix consensus calling to include all variant callers#2096
FriederikeHanssen merged 24 commits intodevfrom
fix-consensus-calling-missing-tools

Conversation

@FriederikeHanssen
Copy link
Contributor

should close #2088

PR checklist

  • This comment contains a description of changes (with reason).
  • If you've fixed a bug or added code that should be tested, add tests!
  • If you've added a new tool - have you followed the pipeline conventions in the contribution docs
  • If necessary, also make a PR on the nf-core/sarek branch on the nf-core/test-datasets repository.
  • Make sure your code lints (nf-core pipelines lint).
  • Ensure the test suite passes (nextflow run . -profile test,docker --outdir <OUTDIR>).
  • Check for unexpected warnings in debug mode (nextflow run . -profile debug,test,docker --outdir <OUTDIR>).
  • Usage Documentation in docs/usage.md is updated.
  • Output Documentation in docs/output.md is updated.
  • CHANGELOG.md is updated.
  • README.md is updated (including new tool citations and authors/contributors).

Fixes #2088

The consensus calling feature was missing several variant callers from
the list of tools eligible for normalization and consensus processing.
This caused VCFs from bcftools (mpileup) and lofreq to be excluded from
consensus calling, even when specified by the user.

Additionally, the Sentieon tool names in the list were incorrect (using
short names like 'dnascope' instead of actual names 'sentieon_dnascope').

Changes:
- Add 'bcftools' and 'lofreq' to small_variantcallers list
- Fix Sentieon tool names to match actual variantcaller metadata:
  - 'dnascope' → 'sentieon_dnascope'
  - 'haplotyper' → 'sentieon_haplotyper'
  - 'tnscope' → 'sentieon_tnscope'
- Remove non-existent 'haplotyper' entry (was never used)

Impact:
Users can now properly run consensus calling with all supported variant
callers including lofreq and mpileup (bcftools).

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@github-actions
Copy link

github-actions bot commented Jan 13, 2026

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

Posted for pipeline commit c4d93fe

+| ✅ 224 tests passed       |+
#| ❔  13 tests were ignored |#
!| ❗   7 tests had warnings |!
Details

❗ Test warnings:

  • 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-01-18 10:32:27

Fixes #2088

The consensus calling feature was missing several variant callers from
the list of tools eligible for normalization and consensus processing.
This caused VCFs from bcftools (mpileup) and lofreq to be excluded from
consensus calling, even when specified by the user.

Additionally, the Sentieon tool names in the list were incorrect (using
short names like 'dnascope' instead of actual names 'sentieon_dnascope').

Changes:
- Add 'bcftools' and 'lofreq' to small_variantcallers list
- Fix Sentieon tool names to match actual variantcaller metadata:
  - 'dnascope' → 'sentieon_dnascope'
  - 'haplotyper' → 'sentieon_haplotyper'
  - 'tnscope' → 'sentieon_tnscope'
- Remove non-existent 'haplotyper' entry (was never used)
- Add comprehensive inline documentation explaining the list
- Add runtime validation to warn about unknown variant callers
- Update consensus test to include lofreq and mpileup
- Update CHANGELOG

Impact:
Users can now properly run consensus calling with all supported variant
callers including lofreq and mpileup (bcftools). If a new SNV caller is
added in the future and not added to the list, a warning will be logged.

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@FriederikeHanssen FriederikeHanssen force-pushed the fix-consensus-calling-missing-tools branch from 0343f6d to 2b31996 Compare January 13, 2026 11:02
@FriederikeHanssen
Copy link
Contributor Author

failing tests aside. I tested this on some real tumor-only data now and it seems to work

FriederikeHanssen and others added 6 commits January 16, 2026 12:04
Add ignoreFiles patterns to exclude non-deterministic consensus outputs:
- 0000.vcf.gz and 0000.vcf.gz.tbi (consensus VCF files)
- sites.txt (bcftools isec sites file)

These files have unstable MD5 checksums and VcfFile metadata that
change between runs, so they must be excluded from snapshot assertions
while still appearing in the file list.

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
Add patterns to exclude unstable consensus calling outputs:
- variant_calling/consensus/*/*/0000.vcf.gz*
- variant_calling/consensus/*/*/sites.txt

These bcftools isec outputs are non-deterministic and produce
different checksums between runs.

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
FriederikeHanssen and others added 2 commits January 17, 2026 23:05
Fix nested braces in glob pattern that caused PatternSyntaxException.
Changed from {0000.vcf{,.gz},sites.txt} to {0000.vcf,0000.vcf.gz,sites.txt}
to avoid nesting groups.

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@FriederikeHanssen FriederikeHanssen merged commit c30d2d1 into dev Jan 18, 2026
71 of 73 checks passed
@FriederikeHanssen FriederikeHanssen deleted the fix-consensus-calling-missing-tools branch January 18, 2026 12:46
@FriederikeHanssen FriederikeHanssen mentioned this pull request Jan 18, 2026
11 tasks
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.

2 participants