Core and extended CTA curation audit
Both panels: figures and audits ยท All 25 figures, vector PDF
The default remains core CTAs (624 genes). Extended reproductive CTAs are an explicit second panel (688 genes), adding 64 genes and removing none. Both use the same 2,537 active coding candidates from ten selected papers and pinned HPA v23 RNA/IHC evidence. The two bundled snapshots also preserve nine legacy-only candidates, for 2,546 rows each. Core membership is unchanged from current main (oncoref 1.8.206); the earlier 298/315 counts described the smaller placental-source snapshot and are superseded by this integrated audit.
Tissue scopes and decisions
Core RNA restriction counts testis, ovary and placenta in the numerator. Extended restriction also counts cervix, endometrium, epididymis, fallopian tube, prostate, seminal vesicle and vagina. Neither numerator adds breast or thymus. Both denominators include all observed normal tissues. Deflation subtracts 1 nTPM from each tissue, flooring at zero; fractions are stored at four decimals, as in the existing gate. Missing RNA remains missing and fails the gate. See RNA expression units for nTPM versus TPM and the distinction between expression measurements and restriction fractions.
Regeneration clears prior RNA evidence for genes absent from its HPA input,
including when converting between scopes. Their fractions, nTPM measurements,
somatic detection counts and thymus detection are missing; RNA restriction axes
are NO_DATA, and RNA qualification/filter flags are false. An empty tissue
name or safety-flag list does not establish absence of expression. Observed
zero expression remains numeric zero and is subject to the separate expression
floor. The tissue audit likewise recomputes somatic maxima from its RNA input.
Protein evidence, its reproductive-tissue convention, reliability thresholds, family exclusions and low-expression policy are shared. The somatic RNA maximum excludes the permissive reproductive set and thymus; it is a different measure from the signal outside the selected numerator. These anatomical definitions are not claims of equal immune privilege or target safety.
The review table explicitly scopes decisions to all, core or extended.
PAGE4's exclusion is a core fraction failure: 0.4539 < 0.80. Its extended
fraction is 0.9851, so it enters the extended panel. Epididymis at 850.2 nTPM is
its largest outside-core signal, prostate is 166.6, and the somatic maximum is
smooth muscle at 23.3. Historical prostate watchlist evidence is preserved.
Its clinical evidence helper continues to describe the core default.
MAGEA11 remains excluded by its shared specificity review. TRIM64 remains candidate-only in both panels. The existing holdback for new nominations based only on normal reproductive expression also applies to both panels.
PATE1, PATE4 and LIPI pass the extended RNA gate but carry only historical CTpedia tags, without membership in the imported complete-paper registry. They remain visible as candidates under explicit extended-scope provenance reviews; they are not silently promoted into the paper-defined panel. This does not assert that these genes lack cancer-associated expression.
The permissive (breast-inclusive) calculation remains a sensitivity audit only, not a third public panel.
Reconciled funnels
| Stage | Core | Extended |
|---|---|---|
| source union | 3,895 | 3,895 |
| canonical ID mapped | 3,654 | 3,654 |
| protein-coding candidates | 2,537 | 2,537 |
| non-CTA removed | 2,523 | 2,523 |
| HPA restriction | 880 | 970 |
| specificity + expression | 624 | 688 |
The source union includes unresolved and noncoding identities. The selected coding union has 883 core / 973 extended raw HPA passes, before removing three family-excluded genes from each. Across all 2,546 snapshot rows (including the nine archived legacy candidates), raw HPA passes are 885 / 978. These are intermediate evidence counts, not public-panel membership.
Source lists overlap: per-source counts cannot be added. Both scopes select the same minimum set of ten papers; each scope exports its own source-cover certificate, full paper intake and final membership. See complete landscape intake and placental-source provenance.
Extended panel additions
| Gene | Core fraction | Extended fraction | Required fraction | Largest outside-core tissue | nTPM |
|---|---|---|---|---|---|
| ADAM12 | 0.7208 | 0.8046 | 0.80 | cervix | 12.7 |
| ADAM7 | 0.0003 | 1.0000 | 0.80 | epididymis | 3638.5 |
| APOBEC4 | 0.4579 | 0.9947 | 0.97 | fallopian tube | 11.2 |
| BSPH1 | 0.0000 | 0.9834 | 0.80 | epididymis | 373.6 |
| CABYR | 0.7758 | 0.8105 | 0.80 | choroid plexus | 12.7 |
| CATSPERE | 0.9171 | 1.0000 | 0.97 | epididymis | 2.6 |
| CFAP141 | 0.3724 | 0.9712 | 0.97 | fallopian tube | 29.5 |
| CRISP1 | 0.0009 | 1.0000 | 0.80 | epididymis | 1536.4 |
| CST9L | 0.7732 | 1.0000 | 0.97 | epididymis | 25.7 |
| DEFB119 | 0.1373 | 0.9360 | 0.90 | epididymis | 1870.7 |
| DEFB123 | 0.4801 | 1.0000 | 0.97 | epididymis | 155 |
| DEFB125 | 0.0000 | 1.0000 | 0.97 | epididymis | 1.5 |
| DEFB126 | 0.0000 | 1.0000 | 0.97 | epididymis | 1251.1 |
| DEFB134 | 0.0408 | 1.0000 | 0.97 | epididymis | 24.5 |
| DNAJC5G | 0.3135 | 0.9777 | 0.95 | epididymis | 45.7 |
| DPPA3 | 0.9545 | 1.0000 | 0.97 | fallopian tube | 1.1 |
| DYDC1 | 0.9576 | 0.9961 | 0.97 | fallopian tube | 5.4 |
| EDDM3A | 0.0002 | 1.0000 | 0.95 | epididymis | 620.9 |
| EDDM3B | 0.0000 | 1.0000 | 0.80 | epididymis | 2502 |
| ELSPBP1 | 0.0000 | 0.9748 | 0.80 | epididymis | 2760 |
| ENSG00000259060 | 0.0000 | 1.0000 | 0.97 | epididymis | 3.7 |
| EPPIN | 0.2014 | 0.9953 | 0.90 | epididymis | 319.7 |
| EVX2 | 0.6333 | 1.0000 | 0.97 | seminal vesicle | 1.5 |
| FAM78B | 0.0000 | 1.0000 | 0.97 | cervix | 1.1 |
| FOXN4 | 0.9266 | 1.0000 | 0.97 | cervix | 1.8 |
| GAPDHS | 0.7938 | 0.8041 | 0.80 | skin | 13.5 |
| GPX5 | 0.0476 | 1.0000 | 0.97 | epididymis | 9 |
| GPX6 | 0.0000 | 1.0000 | 0.97 | epididymis | 3.2 |
| KIAA1210 | 0.3117 | 0.9970 | 0.80 | epididymis | 40.8 |
| MAGEB3 | 0.1931 | 1.0000 | 0.95 | epididymis | 17.3 |
| MEIG1 | 0.7739 | 0.9913 | 0.97 | fallopian tube | 3.5 |
| MSH4 | 0.7949 | 1.0000 | 0.97 | epididymis | 1.8 |
| PAGE4 | 0.4539 | 0.9851 | 0.80 | epididymis | 850.2 |
| PAPPA2 | 0.7570 | 0.8329 | 0.80 | cervix | 6.4 |
| PATE2 | 0.0000 | 1.0000 | 0.97 | epididymis | 439.7 |
| PATE3 | 0.0000 | 1.0000 | 0.97 | epididymis | 154.4 |
| PLSCR2 | 0.9606 | 0.9921 | 0.97 | epididymis | 1.4 |
| POTEG | 0.0000 | 1.0000 | 0.97 | prostate | 1.1 |
| POTEH | 0.0000 | 1.0000 | 0.97 | prostate | 1.6 |
| POTEI | 0.6111 | 1.0000 | 0.97 | prostate | 2.4 |
| POTEM | 0.1450 | 1.0000 | 0.97 | prostate | 18.1 |
| PPP1R42 | 0.6423 | 0.9919 | 0.97 | fallopian tube | 5.3 |
| PRDM9 | 0.8286 | 1.0000 | 0.97 | epididymis | 1.6 |
| RNASE11 | 0.0657 | 1.0000 | 0.97 | epididymis | 643.4 |
| RNASE12 | 0.0004 | 0.9993 | 0.80 | epididymis | 679.2 |
| RNASE13 | 0.0000 | 0.9937 | 0.97 | epididymis | 299.6 |
| SCGB1D1 | 0.0000 | 1.0000 | 0.97 | cervix | 1.2 |
| SEPTIN14 | 0.7932 | 0.8008 | 0.80 | bone marrow | 2.3 |
| SPAG11A | 0.0000 | 1.0000 | 0.90 | epididymis | 4639.4 |
| SPAG11B | 0.0000 | 1.0000 | 0.90 | epididymis | 1228.4 |
| SPATA31C1 | 0.9242 | 1.0000 | 0.97 | epididymis | 1.5 |
| SPATA31C2 | 0.2349 | 1.0000 | 0.97 | epididymis | 22.5 |
| SPATS1 | 0.6476 | 1.0000 | 0.95 | fallopian tube | 7.4 |
| SPINK2 | 0.0580 | 0.9911 | 0.80 | epididymis | 5123.9 |
| SYT10 | 0.0000 | 1.0000 | 0.97 | fallopian tube | 2.1 |
| TDRD12 | 0.8543 | 1.0000 | 0.97 | epididymis | 3.2 |
| TP53TG3B | 0.0000 | 1.0000 | 0.97 | epididymis | 4.3 |
| TTC16 | 0.7143 | 0.9951 | 0.97 | fallopian tube | 6.7 |
| UBQLNL | 0.9426 | 0.9789 | 0.97 | cervix | 1.5 |
| UMODL1 | 1.0000 | 1.0000 | 0.97 | fallopian tube | 1 |
| VRTN | 0.6000 | 1.0000 | 0.97 | epididymis | 1.4 |
| WFDC10A | 0.0000 | 1.0000 | 0.97 | epididymis | 280.5 |
| WFDC6 | 0.1364 | 0.9988 | 0.97 | epididymis | 217.3 |
| ZNF705D | 0.0000 | 1.0000 | 0.97 | epididymis | 3.2 |
The 2,546-gene tissue audit records all fractions, HPA gate decisions, thresholds, and outside-core/somatic maxima. The comparison CSV produced with the figures records both panels' decisions for all 2,532 family-eligible snapshot rows, including the nine archived legacy candidates. The active source funnel contains 2,523 family-eligible candidates.
Public access and reproduction
from oncoref import cta
core = cta.cta_gene_names()
extended = cta.cta_extended_gene_names()
cta.cta_extended_gene_ids()
cta.cta_extended_df()
Both evidence snapshots ship in the wheel and require no downloads to read. The regenerator recomputes both from the same candidate identity columns:
# Sidecars and delta report; add --apply to update both bundled snapshots.
python scripts/regenerate_cta_table.py --tissue-audit docs/audits/cta-reproductive-tiers.csv
# Twelve figures per scope plus a direct funnel comparison; PNG, PDF and CSV.
python -m oncoref.cli plot cta-curation --tissue-scope both --out outputs/cta-curation-both
The module command uses this checkout when run from the repository root.
After installing this version, the equivalent oncoref plot ... command works
from any directory.
Each panel exports raw and reviewed evidence, source membership/counts, publication membership/intake counts, stage counts and RNA thresholds. Figure thresholds use the same constants as curation: Enhanced 0.80, Supported 0.90, Approved 0.95, Uncertain/missing 0.97. Per-source retention means final panel membership; HPA-pass rows excluded later are shown separately.
The source importer requires an explicit retrieval date, writes sidecars by default, preserves historical source biotypes, rejects within-source identity collisions, and reproduces both snapshots and both provenance tables from the original Gong workbook without dropping the other landscape sources. Regression coverage checks snapshot regeneration, missing evidence, versioned identifiers, scope-specific reviews, complete source intake and plotted counts/thresholds.