Skip to content

Fix RNA variant support caching - #577

Merged
iskandr merged 1 commit into
mainfrom
fix/rna-support-cache-575
Oct 6, 2026
Merged

iskandr merged 1 commit into
mainfrom
fix/rna-support-cache-575

Conversation

@iskandr

@iskandr iskandr commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

RNAReadPhasingSource.supports_variant() saved counts under the last
sequencing-template key instead of the variant key. Repeated calls therefore
rescanned the BAM even when the support count was already known. Keep
variant_key and fragment_key separate so each allele caches its own count,
including zero and missing-contig results.

Regressions verify interleaved variants (including different alts at one
locus), equivalent Variant instances, RG/QNAME template grouping, overlapping
mates, informative conflicts and quality/flag filters. They also verify that
new haplotype registration invalidates support and phase caches when counts
increase or decrease, while duplicate registration retains the cache. The
audited real Sid NTF3 and EXOC4 cases now assert one support fetch per variant
through repeated support, evidence and resolver queries. Allele calling and
fragment filtering are unchanged. Bump the patch version to 10.11.7.

Closes #575.

Validation:

  • Before the fix, all 10 targeted regression cases failed on cache reuse after
    their count assertions passed.
  • ./lint.sh: passed.
  • Focused RNA source, haplotype and real Sid suites: 131 passed.
  • TEST_SH_MAX=2 ./test.sh: 3,240 passed (22 existing warnings).

@iskandr
iskandr merged commit 8aee2b2 into main Oct 6, 2026
5 checks passed
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.

RNAReadPhasingSource support cache stores counts under the last fragment key

1 participant