fe0627da07b9f989bc642d824af381968163d9a8
lrnassar
  Wed Jul 8 13:40:04 2026 -0700
varFreqs: move ALFA to Global reference panels; add shared-sample bias caveat to description pages. refs #36642

Per Max's post-release feedback on the ticket: ALFA is not a European
cohort, it is an NCBI aggregator of dbGaP studies from many sources.
Moved from Europe to Global reference panels in the newsarch entry.

Also adds a shared-sample bias caveat to the Pooled allele frequency
section of both varFreqsAffected.html and varFreqsBackground.html. The
background page cites the concrete overlaps (1000 Genomes in both gnomAD
HGDP+1kG and HRC; HGDP/SGDP; AllOfUs/TOPMed; ALFA aggregating dbGaP
studies used elsewhere). The affected page cites the SPARK WGS cohort
being a subset of SPARK WES. Both explain that pooled AN is inflated and
pooled AF is skewed toward the frequency in the shared subset, and point
users to the per-cohort AC/AF/AN fields for unbiased single-cohort
numbers.

diff --git src/hg/makeDb/trackDb/human/varFreqsBackground.html src/hg/makeDb/trackDb/human/varFreqsBackground.html
index 598b693e6ba..56fdfc599b7 100644
--- src/hg/makeDb/trackDb/human/varFreqsBackground.html
+++ src/hg/makeDb/trackDb/human/varFreqsBackground.html
@@ -48,30 +48,40 @@
 unaffected/control arms: <code>backgroundAF = sum(AC) / sum(AN)</code>, where
 <b>backgroundAC</b> sums the allele counts and <b>backgroundAN</b> sums the allele
 numbers across each cohort/arm that provides both AC and AF (the per-arm AN is derived as
 <code>round(AC / AF)</code>). Two cohorts that publish only AF (ABraOM, ALFA) are still
 pooled by assigning them an assumed allele number, set as a <code>default_an</code> in the
 build configuration; their per-arm AC is then derived as <code>round(AF &times; default_an)</code>.
 Cohorts that publish
 only AC with no <code>default_an</code> set (currently MGRB and the GREGoR unaffected and
 unknown arms), and cohorts that contribute only through per-population AC/AF (currently
 AllOfUs), are listed in <b>backgroundSources</b> but do not contribute to the pool
 numerator or denominator; their data remain visible in the per-database and per-population
 AC/AF columns. The pooled rate is preferred over a max-across-cohorts statistic so a small
 cohort with a high local AF (for example AllOfUs Oceanian) cannot dominate the displayed
 frequency.
 </p>
+<p>
+The pooled rate also inherits a <b>shared-sample bias</b>: several source cohorts overlap
+in the individuals they include. For example, 1000 Genomes samples appear in both gnomAD
+HGDP+1kG and HRC; HGDP and SGDP overlap; AllOfUs and TOPMed share participants; ALFA
+aggregates dbGaP studies used elsewhere in the pool. Where a variant sits in a shared
+sample, both its AC and AN are counted more than once, so pooled AN is inflated and
+pooled AF is skewed toward the frequency in the shared subset. Treat the pooled rate as
+a cross-cohort summary rather than an unbiased population estimate; the per-cohort
+AC/AF/AN fields on each variant give the single-cohort numbers.
+</p>
 
 <h3>Top population sources by AF</h3>
 <p>
 Alongside the pooled rate, the mouseover lists the top 3 contributing
 background sources ranked by their own per-source AF, formatted as
 <code>Source (AF)</code>. This surfaces population cohorts where a variant
 is specifically enriched, even when the pooled rate is small; the
 East-Asian founder allele
 <a href="/cgi-bin/hgTracks?db=hg38&position=chr10:111751803-111751805&varFreqs=full&varFreqsBackground=pack" target="_blank">rs4986893</a>,
 for example, ranks ToMMo Japan and KOVA Korea at the top while the pooled
 rate across all contributing sources sits much lower. For disease cohorts
 that ship a phenotype split (SPARK, SFARI WGS, SCHEMA, GREGoR), the
 displayed AF is the unaffected-arm AF and the label includes the arm (for
 example <code>SPARK non-ASD</code>, <code>SCHEMA ctrl</code>); for
 population cohorts, the label is the cohort name and the AF is the unified