d8b6c80ed8ff14976691a387275e5632861f9b66
lrnassar
  Tue Aug 11 17:21:12 2026 -0700
Use raw (unmasked) SpliceAI file for BP7 to match the Walker 2023 calibration. refs #37446

Walker 2023 (PMID 37352859), which the CM VCEP cited for the BP7 SpliceAI < 0.1
rule, derived that threshold on the raw max delta score. The masked SNV file zeroes
losses at unannotated (cryptic) splice sites; for our 8 genes that would grant BP7
to 66 synonymous variants whose raw score is up to 0.87. Switching to the released
raw file spliceAIsnvs.bb keeps the score type matched to the calibration and is the
more conservative benign call. BP7 count 2,415 -> 2,334.

diff --git src/hg/makeDb/doc/Cardiomyopathy.txt src/hg/makeDb/doc/Cardiomyopathy.txt
index 8bc89b17de8..0cc4661be64 100644
--- src/hg/makeDb/doc/Cardiomyopathy.txt
+++ src/hg/makeDb/doc/Cardiomyopathy.txt
@@ -187,32 +187,37 @@
 #      State at ClinVar release 2026-05-30: 199 records, 100% "reviewed by
 #      expert panel". Classifications: 33 P + 32 LP + 75 VUS + 9 LB + 50 B = 199.
 #
 #
 # A.4  gnomAD v4.1 exomes (already on hgwdev; no download)
 #      /hive/data/outside/gnomAD.4/v4.1/exomes/gnomad.exomes.v4.1.sites.chr{N}.vcf.bgz
 #      Field used: fafmax_faf95_max (max FAF95 across genetic ancestry groups),
 #      queried per-region via tabix.
 #      Public mirror: https://hgdownload.soe.ucsc.edu/gbdb/hg38/gnomAD/v4.1/exomes/exomes.bb
 #
 # A.5  REVEL (already on hgwdev; no download)
 #      /gbdb/hg38/revel/{a,c,g,t}.bw  (per-alt-nucleotide bigwigs)
 #      Public mirror: https://hgdownload.soe.ucsc.edu/gbdb/hg38/revel/
 #
 # A.6  SpliceAI (already on hgwdev; no download)
-#      /gbdb/hg38/bbi/spliceAIsnvsMasked.bb  (bed9+4; AIscore in col 9, name="ref>alt")
-#      This is the released masked-SNV file that the live UCSC spliceAI track serves.
+#      /gbdb/hg38/bbi/spliceAIsnvs.bb  (bed9+4; AIscore in col 9, name="ref>alt")
+#      This is the released RAW (unmasked) SNV file. We use RAW, not the masked file,
+#      because Walker 2023 (PMID 37352859) - the calibration our BP7/BP4 SpliceAI cutoff
+#      cites - derived the <0.1 threshold on the raw max delta score. The masked file
+#      zeroes losses at unannotated (cryptic) splice sites; for our 8 genes that would
+#      grant BP7 to 66 synonymous variants whose raw score is up to 0.87, so RAW keeps the
+#      score type matched to the calibration and is the more conservative benign call.
 #      (The older /gbdb/hg38/bbi/spliceAi.bb symlink is superseded and no longer used.)
 #      Used by the B.11 splice flag and BP7 (SpliceAI < 0.1). The file has a 0.02
 #      reporting floor, so a variant with no record has a true score below 0.02
 #      (hence below 0.1): BP7 still applies, and the mouseover says "no record
 #      (below the 0.02 reporting floor)" rather than printing a default 0.00 as data.
 #
 # A.7  CardioBoost precomputed predictions
 #      cmp_downloads/cardioboost/cm_prediction.RData  (precomputed table,
 #        ~65k rows; ~31k in our 8 genes — NOT just model objects)
 #      Source: https://github.com/ImperialCardioGenetics/CardioBoost_manuscript
 #      Loaded via /usr/bin/Rscript (the team Rscript is broken on hgwdev —
 #      missing libgfortran.so.3). Coordinates are GRCh37 with numeric chrom
 #      names; B.5 adds the chr prefix and liftOvers to hg38.
 #
 # A.8  Walsh PS4 + PM1 calibration supplements
@@ -367,31 +372,31 @@
 #      P/LP reference, leave-one-out; a variant cannot earn the code from its
 #      own entry; PS1 reference excludes established splice-impact variants e.g.
 #      MYBPC3 c.2308G>A), PM4 (NMD-escaping truncating, non-MYBPC3: last exon or
 #      within 50 nt of the final exon-exon junction), BP7 (synonymous +
 #      SpliceAI < 0.1, per Walker 2023 PMID 37352859; conservation requirement
 #      removed per the VCEP). PM1<->PM5 mutual exclusion enforced per CSpec (keep
 #      PM5, the variant-specific code; drop PM1; PM1+PS1 co-occurrence flagged).
 #      HCM/DCM diseaseTag populated. A SpliceAI score >= 0.20 is recorded as an
 #      informational splice flag.
 #      Mouseover is evidence-first ("evidence -> supports CODE"); NO overall
 #      classification is calculated. The GN002 combining logic remains in the
 #      script as classify() but is retired/uncalled. Clinical/functional codes
 #      (PS2/PS3/PS4/PP1/PP4/BS3/BS4) are not computed. Single neutral display
 #      color 91,107,122; no classification encoded.
 #      Output: 10,974 features. Evidence firing: BA1 210, BS1 367, PM2_Supporting
-#      9,893, PP3 1,436, BP4 1,647, BP7 2,415, PM1 1,293, PM4 27, PM5 11, PS1 0.
+#      9,893, PP3 1,436, BP4 1,647, BP7 2,334, PM1 1,293, PM4 27, PM5 11, PS1 0.
 
 
 ##############################################################################
 # Phase C: Hub assembly
 ##############################################################################
 #
 # Files written/maintained by hand (NOT generated by the build scripts):
 #   hub.txt, genomes.txt
 #   cardiomyopathy.html        (shared description page; hub descriptionUrl)
 #   hg38/trackDb.txt
 #   hg19/trackDb.txt           (mirrors hg38; differs in bigDataUrl + an hg19
 #                              provenance header noting liftOver-derived coords)
 #
 # trackDb structure: 6 top-level groups -> 9 tracks. Two are composites:
 #   Bioinformatic (REVEL on + CardioBoost off) and VCEP Curated Variants (EvRepo on