SV/CNV Methodology
Documentation of how Helena evaluates structural variants and copy-number variants (SV/CNV) under the Riggs 2020 joint ACMG and ClinGen technical standard. It describes the point-based loss metric (Table 1) and gain metric (Table 2), the dosage-sensitivity evidence, and the five-tier classification. This documentation is intended for clinical geneticists, laboratory directors, and accreditation auditors.
Where the SV pass sits
The SV/CNV pass is the third classification framework over the variants table, alongside nuclear ACMG/AMP 2015 and mitochondrial MMDWG 2020. It scores only SV-typed rows: losses (DEL, or copy number below 2) are scored under Table 1, and gains (DUP, or copy number above 2) under Table 2; the two row sets are mutually exclusive, so no row is scored twice.
SV row routing
SV-typed rows are separated from nuclear and mitochondrial rows. Losses and gains are partitioned by mutually exclusive conditions (loss takes precedence on a contradictory row), so each SV row passes through exactly one of the two point metrics.
Per-section Riggs scoring
For each row the Riggs per-section points (genomic content, dosage sensitivity, gene number, population frequency, inheritance) are summed into a total score. The point values and thresholds are read from a single source of configuration constants; there are no inline clinical numbers in the code.
Five-tier verdict assembly
The total score is mapped through the single five-tier ladder into a label (P/LP/VUS/LB/B) and a per-section audit breakdown. The framework label is written as cnv_riggs_2020. The whole pass ships behind config.sv.enabled (default off).
Loss metric (Riggs 2020, Table 1)
A semiquantitative point metric for copy-number losses. The point values below are the Riggs "suggested points per case" column values, not the maximum-score cap. The sections active at launch are scored from the available evidence columns; hooks that the standard defines but the current schema cannot establish are scored 0 and explicitly flagged.
Genomic content
1B (-0.60): the loss overlaps neither a protein-coding gene nor an exon (zero coding content). Any coding overlap is 1A (continue, 0.00).
Established haploinsufficiency (HI)
2A (+1.00): an established-HI region token (ClinGen score 3) with complete overlap - the loss completely overlaps the established-HI region.
Predicted haploinsufficiency
2H (+0.15): a predicted-HI signal - Collins pHaplo >= 0.86. A missing (unannotated) pHaplo value does not fire 2H.
Intragenic PVS1 decomposition
A single-gene intragenic loss (one gene with exon overlap) is scored by the ClinGen SVI PVS1 ladder. Active from the available geometry: Moderate +0.30 (>= 2 exons) and Supporting +0.15 (1 exon). The VeryStrong +0.90 and Strong +0.45 tiers are documented hooks - unreachable from the current SV schema (no NMD-competence / exon-resolution column), so they are never selected at launch (conservative under-call).
Established-benign containment
2F (-1.00 by standard): a documented hook scored 0 at launch. The shipped complete-overlap token encodes the opposite geometry (the SV contains the region, not a variant within a region), so awarding -1.00 would fabricate a strong benign downgrade; scoring 0 is the clinically safe under-call. Must be described as not yet active, not as active scoring.
Gene number
Banded on gene number: 0-24 -> 0.00 (3A); 25-34 -> +0.45 (3B); 35+ -> +0.90 (3C).
Common population variation
4O (-1.00): population frequency above 1%. The predicate structurally excludes the absent sentinel (-1.0) and the missing value, so neither reads as "common". 4A-4N have no shipped per-case column and are scored 0.
Inheritance
At launch the contribution is 5F = 0.00 - no shipped SV column carries a de novo / segregation signal. 5G (+0.10) and 5H (+0.15, the erratum value) are carried in config for a future family-side signal but are unreachable at launch (documented, not active).
Gain metric (Riggs 2020, Table 2)
A clean mirror of the loss metric over the gain rows and gain constants, with the differences specific to Table 2. Where Table 2 awards 0 points by definition (unlike Table 1), this is flagged as "0 by table" so it is visible that it is not an omission.
Genomic content
1B (-0.60): the gain overlaps neither a gene nor an exon - the same zero-coding-content predicate as the loss.
Established triplosensitivity (TS)
2A (+1.00): an established-TS region token (ClinGen score 3 on the TS axis) with complete overlap.
Predicted triplosensitivity
Collins pTriplo >= 0.94 carries a predicted-TS signal, but Table 2 has no +point row for predicted TS (unlike loss 2H). The launch contribution is therefore 0.00; the threshold is read and the zero surfaces in the breakdown so it is visible. Must be described as 0 by table, not as +points.
HI gene contained within the gain
2H under Table 2 is 0.00 (continue) - explicitly NOT the loss 2H +0.15. The +0.15 value from the loss must never be copied onto this row.
Smaller than an established-benign gain
2D (-1.00 by standard): a documented hook scored 0. The shipped token carries no benign-region-containment signal, so the launch contribution is 0. Must be described as not yet active.
Breakpoint in an HI gene + specific phenotype
2K (+0.45 by standard): a documented hook scored 0. The shipped token carries no breakpoint-in-gene + phenotype-specificity signal, so the launch contribution is 0. Must be described as not yet active.
Intragenic PVS1 decomposition
The same ClinGen SVI PVS1 ladder as loss 2E - one SVI specification applied to the intragenic category of each table. Active: Moderate +0.30 / Supporting +0.15; VeryStrong +0.90 / Strong +0.45 are documented hooks, unreachable from the current geometry.
Gene number (gain bands)
Gain bands, different from the loss: 0-34 -> 0.00 (3A); 35-49 -> +0.45 (3B); 50+ -> +0.90 (3C).
Common population variation
4O (-1.00): population frequency above 1%; the same predicate as the loss, excluding the absent sentinel and the missing value.
Inheritance
The launch contribution is 5F = 0.00. 5G (+0.10) and 5H (+0.15, as published in Table 2 - not the loss erratum) are carried in config but are unreachable at launch.
Dosage-sensitivity evidence
The point metrics read predicted and established dosage-sensitivity signals from two named standards.
Collins 2022 (pHaplo / pTriplo)
pHaplo >= 0.86 is the threshold for predicted haploinsufficiency (fires loss 2H, +0.15). pTriplo >= 0.94 is the threshold for predicted triplosensitivity (0 by table for the gain).
ClinGen Dosage Sensitivity Map
Score 3 = established HI/TS (fires 2A +1.00 on the matching axis). Score 40 = dosage-sensitivity-unlikely / established benign (named in config for the future 2F wiring; not active scoring at launch). Score 30 = autosomal recessive. Score -1 = not evaluated.
Classification thresholds
The total score is mapped to a five-tier label by the exact cutoffs of the single ladder (shared between loss and gain). These are the SV metric cutoffs - NOT the point bands of the nuclear ACMG page, which are a different metric.
| Tier | Score range |
|---|---|
| Pathogenic (P) | total >= 0.99 |
| Likely Pathogenic (LP) | 0.90 <= total <= 0.98 |
| Uncertain Significance (VUS) | -0.89 <= total <= 0.89 |
| Likely Benign (LB) | -0.98 <= total <= -0.90 |
| Benign (B) | total <= -0.99 |
Reference data
The SV pass joins no separate reference tables during scoring; it reads the SV evidence columns already materialised on the row by the SV annotation stage. The assets listed are the sources those evidence columns depend on.
ClinGen Dosage Sensitivity Map
Scores for established HI/TS regions plus the dosage-unlikely / autosomal-recessive / not-evaluated sentinels.
Collins 2022 pHaplo / pTriplo
Predicted dosage-sensitivity scores (predicted HI and TS).
gnomAD-SV v4 / gnomAD CNV v4 population frequency
The basis for the structural-variant population frequency used by Section 4O.
Materialised SV evidence columns
Gene/exon overlap counts, HI/TS region tokens, pHaplo/pTriplo, and population frequency, produced by the SV annotation stage and read directly from the row.
Limitations and documented hooks
The framework ships behind config.sv.enabled (default off). Where the standard defines a contribution the shipped schema cannot establish, the section is scored 0 and listed here as documented but not yet active - never as active scoring.
The framework is implemented, wired, and documented, but ships behind config.sv.enabled (default off); in production it is inert until separate clinical validation and operator activation.
Loss 2F (established-benign containment, -1.00 by standard) is a documented hook scored 0: the shipped token encodes the opposite geometry, so awarding -1.00 would be a fabricated benign downgrade.
Gain 2D (-1.00 by standard) and 2K (+0.45 by standard) are documented hooks scored 0: the shipped token carries no benign-region-containment signal, nor a breakpoint-in-gene with phenotype specificity.
Predicted triplosensitivity (pTriplo >= 0.94) and gain 2H are 0 by table: Table 2 awards them no +points. The loss 2H +0.15 value is not copied onto the gain.
The VeryStrong (+0.90) and Strong (+0.45) tiers of the intragenic PVS1 decomposition (loss 2E / gain 2I) are documented hooks - unreachable from the current SV schema, which carries no NMD-competence or exon-resolution column; only Moderate and Supporting are active.
The 5G and 5H inheritance tiers are carried in config but are unreachable at launch - no shipped SV column carries a de novo / segregation signal or phenotype specificity.
Repeat expansions are not classified by this framework; they remain outside the scope of the SV/CNV pass.
Version History
Build and documentation milestones of the SV/CNV framework. The entries describe the built capability; they do not assert clinical activation - the pass ships behind config.sv.enabled.
Implemented and documented the Table 1 loss point metric (HEL-CR-2026-SV-LOSS-SCORING-RIGGS-TABLE1-001).
Implemented and documented the Table 2 gain point metric (HEL-CR-2026-SV-GAIN-SCORING-RIGGS-TABLE2-001).
Implemented the intragenic PVS1 decomposition for loss 2E and gain 2I (HEL-CR-2026-SV-INTRAGENIC-PVS1-DECOMPOSITION-001).
Wired the five-tier verdict assembly and the cnv_riggs_2020 framework-label write as the third classification pass (HEL-CR-2026-SV-DISPATCH-WIRING-AND-VERDICT-ASSEMBLY-001); shipped behind config.sv.enabled pending clinical validation.
References
Riggs ER, Andersen EF, Cherry AM, Kantarci S, Kearney H, Patel A, et al. Technical standards for the interpretation and reporting of constitutional copy-number variants: a joint consensus recommendation of the American College of Medical Genetics and Genomics (ACMG) and the Clinical Genome Resource (ClinGen).
Genetics in Medicine. 2020;22(2):245-257.
PMID: 31690835Riggs ER, Andersen EF, Cherry AM, Kantarci S, Kearney H, Patel A, et al. Erratum: Technical standards for the interpretation and reporting of constitutional copy-number variants (item 5H default 0.15).
Genetics in Medicine. 2021;23(11):2230.
PMID: 33731880Collins RL, Glessner JT, Porcu E, Lepamets M, Brandon R, Lauricella C, et al. A cross-disorder dosage sensitivity map of the human genome.
Cell. 2022;185(16):3041-3055.
PMID: 35917817Riggs 2020 (cnv_riggs_2020) -- Riggs ER et al., Genet Med. 2020;22(2):245-257. PMID: 31690835; Collins RL et al., Cell. 2022;185(16):3041-3055. PMID: 35917817; ClinGen Dosage Sensitivity Map (clinicalgenome.org)
Bring structural-variant classification into your clinical workflow
Helena's SV/CNV framework extends the Variant Analysis Service. Schedule a discussion with our scientific team to assess the fit for your laboratory.