Tracking follow-up for the chimera-diagnostics subcommand added in #54. The bimera-based remove-bimera-denovo does not catch higher-order chimeras (trimeras); some lower-abundance reads on long amplicons (nodA) and low-biomass samples survive bimera removal yet look chimeric. #54 surfaces the bimera coverage signal as a diagnostic TSV and a refined trimera_suspect call. This issue tracks refinement and validation. remove-bimera-denovo work stays open.
What's in #54
A read-only chimera-diagnostics TSV (does not filter). trimera_suspect is gated on metrics the alignment pass already computes:
nearest_parent_dist (min ends-free Hamming to any single parent) — the key variant-vs-mosaic disambiguator.
- third parent must beat the end parents in the gap (
gap_mismatches < gap_end_parent_mismatches).
- both flanks
>= min_flank (two real junctions) — rejects tiny-flank divergent singletons.
min_gap_len — rejects the one-off-bimera tier (gap ≈ 1).
CLI knobs: --trimera-{min-parent-dist=15,min-gap=20,max-gap-error=0.10,min-flank=30}.
On a 5-sample nodA subset, suspects dropped 12+ → 1 (an abundant A-flanked / C-middle recombinant between the two dominant ASVs).
Follow-up work
Notes
- nodA dataset:
data/nodA/demux_fastq (74 samples); primers fwd TGCRGTGGAARNTRNNCTGGGAAA, rev GGNCCGTCRTCRAAWGTCARGTA; dominant amplicon ~696 bp with a varied background tail.
- A real trimera test on the cluster side is planned.
Tracking follow-up for the
chimera-diagnosticssubcommand added in #54. The bimera-basedremove-bimera-denovodoes not catch higher-order chimeras (trimeras); some lower-abundance reads on long amplicons (nodA) and low-biomass samples survive bimera removal yet look chimeric. #54 surfaces the bimera coverage signal as a diagnostic TSV and a refinedtrimera_suspectcall. This issue tracks refinement and validation.remove-bimera-denovowork stays open.What's in #54
A read-only
chimera-diagnosticsTSV (does not filter).trimera_suspectis gated on metrics the alignment pass already computes:nearest_parent_dist(min ends-free Hamming to any single parent) — the key variant-vs-mosaic disambiguator.gap_mismatches < gap_end_parent_mismatches).>= min_flank(two real junctions) — rejects tiny-flank divergent singletons.min_gap_len— rejects the one-off-bimera tier (gap ≈ 1).CLI knobs:
--trimera-{min-parent-dist=15,min-gap=20,max-gap-error=0.10,min-flank=30}.On a 5-sample nodA subset, suspects dropped 12+ → 1 (an abundant A-flanked / C-middle recombinant between the two dominant ASVs).
Follow-up work
(nflag, nsam)from the consensus path should be exportable to allow re-thresholding without re-aligning.nearest_parent_disthandles cross-length comparisons sensibly.--align-backend wfa2and confirm gap coordinates are stable (junction gap placement could shift).Notes
data/nodA/demux_fastq(74 samples); primers fwdTGCRGTGGAARNTRNNCTGGGAAA, revGGNCCGTCRTCRAAWGTCARGTA; dominant amplicon ~696 bp with a varied background tail.