Diffing the core scaffold's curated interactome against the graph: 46 of 217 partners are things here, CDK9 is not one of them, and the filter I built to rank the rest was counting one platform twice
also called core complex interactome gap · CDK9 has no entry · interactome saturation check
We asked an outside database which proteins are known to stick to the machine this cancer builds, then checked how many of them we had actually written down as separate things. One in five. The single best-documented one - the enzyme at the centre of our own explanation of the disease - had no page of its own.
The same thing, for a scientist
`analyses/aff1-interactome-gap` ran this instrument against the 3' partner alone. Extended here to the whole core scaffold - **KMT2A, MEN1, PSIP1, AFF4, DOT1L and AFF1** - giving **651 IntAct interaction rows and 217 distinct human partners**, of which **46 (21.2%) have an entry of their own** and 18 more are named somewhere without being a thing. The ledger grades Q5 Interactome **saturated for phase 1** at 126 entries; against an external instrument that grade does not hold. **But the raw gap is not 171 missing entries, and saying so would be the exact error this project keeps making.** Reading the 29-row queue splits it three ways: a handful of real defects, a set already adjudicated elsewhere under a different filing, and a majority that is platform background. **The sharpest real defect is CDK9** - 8 publications across 3 of the 6 baits, the best-evidenced partner in the entire union, and the mechanical centre of this graph's account of how the fusion works. It exists only inside `protein-ptefb-cdk9-ccnt1`, a summary entry covering two proteins, while its partner CCNT1 was given `gene-ccnt1`. **And the brake is missing outright**: `7SK` is mentioned 36 times across 13 entries, `HEXIM1` 16 times, `MEPCE` not once, and none of them is an entry.
Per-bait coverage, and the bait with the worst of it
| bait | UniProt | IntAct rows | human partners | named somewhere | has its own entry |
|---|---|---|---|---|---|
| KMT2A | Q03164 | 218 | 101 | 42 (41.6%) | 31 (30.7%) |
| AFF4 | Q9UHB7 | 179 | 69 | 19 (27.5%) | 17 (24.6%) |
| AFF1 | P51825 | 91 | 25 | 15 (60.0%) | 13 (52.0%) |
| MEN1 | O00255 | 62 | 30 | 7 (23.3%) | 4 (13.3%) |
| DOT1L | Q8TEK3 | 51 | 24 | 11 (45.8%) | 11 (45.8%) |
| PSIP1 | O75475 | 50 | 28 | 9 (32.1%) | 7 (25.0%) |
| union | 651 | 217 | 64 | 46 (21.2%) |
MEN1 is last, at 4 of 30. That is the protein the entire therapeutic hypothesis of this graph is about, and it is the bait whose curated neighbourhood we have written down least. The reason is visible in the beat structure: menin has been studied here through the interface it presents to KMT2A and through its endocrine liabilities, not as a protein with a neighbourhood. Both of those are real programmes; neither enumerates partners.
DOT1L is first, and it is first for an uninteresting reason - it has the fewest curated partners of the six, so a beat that read one complex roster covered half of them.
The filter I built to rank the queue does not measure independence
The read queue was defined as partners with no entry of their own and either two or more publications or two or more baits. That gave 29 rows, and the two-publication half of the rule is broken.
Fourteen of the 29 rest on the same two PMIDs: 28514442 and 33961781. Fetched and read back: Architecture of the human interactome defines protein communities and disease networks (Nature 2017, Huttlin first, Harper last) and Dual proteome-scale networks reveal cell-specific remodeling of the human interactome (Cell 2021, Huttlin first, Gygi last). These are BioPlex 2.0 and BioPlex 3.0 - one platform, one collaboration, two sequential releases of the same affinity-purification pipeline. Two publications, one observation.
This graph has already measured that mistake in its own citations: ana-how-many-laboratories-is-this-graph-standing-on found 1,731 papers resolving to 1,041 groups and a 12.8% independence overcount. What is new here is that the same failure sits inside a curated database's evidence counts, so a paper count read off IntAct is not an independence count either, and the fix that worked for our own bibliography - cluster by group before counting - applies unchanged.
Corrected reading of the queue: CAMKV, PIP4K2A, EPB41L1, EPB41L3, FGF12, PLCD3, ARRB2, DENND2D, FAM9A, MDK, PBX2, PES1, RSBN1 and CCNT2 are one platform's rows, all by anti-tag co-immunoprecipitation, and none of them should have been promoted above a single-paper hit by that rule.
Reading the rest of the queue: what is a defect and what is design
Real and worth writing:
- CDK9 - 8 papers, 3 baits. Discussed below; it is the finding.
- HEXIM1 - the 7SK brake on P-TEFb. Its two rows are the BioPlex pair, so the database evidence is one observation; the reason to write it is not IntAct but that the graph's own prose invokes 7SK 36 times without ever making it a thing.
- CSNK2A2 - 4 papers, 2 baits, and
gene-csnk2a1exists while the paralogue does not. This graph has found paralogue splits informative four times. - MED19 - two papers, one of them PMID 21729782, Human mediator subunit MED26 functions as a docking site for transcription elongation factors (Cell 2011, Takahashi first, Conaway last), fetched and read back.
gene-med26exists; the Mediator neighbours it docks with do not. - ESR1 - appears against four of six baits and has zero occurrences anywhere in this graph, not even in prose. Menin as an ESR1 cofactor is established endocrine biology and there is an endocrine beat here that does not mention it.
- MYC - two papers, and its only home in 1,260 entries is
resistance-myc-bypass-prc1.
Already adjudicated, filed differently - not gaps:
- H3C1 ranks top of the queue and is a false positive by construction. Histone H3 is one of ~15 near-identical genes and this graph files histones as marks and interfaces (
mark-h3k79me2,interface-kmt2a-phd3-h3k4me3,interface-psip1-pwwp-h3k36me-nucleosome), which is the right unit for a chromatin reader. Agene-h3c1entry would be worse than its absence. - YWHAG - the 14-3-3 axis has six entries including a motif scan, a bounded absence and
interface-ywhaq-aff1-s588-14-3-3. The family is adjudicated; one more paralogue is not a hole.
Platform background:
- AFG2A and AFG2B come from PMID 38554706, fetched and read back as The SPATA5-SPATA5L1 ATPase complex directs replisome proteostasis to ensure genome integrity (Cell 2024, Krishnamoorthy first, Greenberg last). AFG2A/AFG2B are SPATA5/SPATA5L1 under current symbols. A replisome-proteostasis tandem affinity prep recovering KMT2A and menin is what abundant nuclear protein looks like in a TAP eluate.
- BUD13, ILF3 and RPS11 come from PMID 39251607, Systematic identification of post-transcriptional regulatory modules (Nat Commun 2024, Khoroshkin first, Goodarzi last) - the RBP BioID2 map already recorded at
ana-rbp-bioid2-proximity-map-k562. Proximity to an RBP bait is not complex membership, which this graph settled atconcept-proximity-labelling-is-not-co-purification.
CDK9, and the rule it was breaking
The standing instruction is one entry per thing; never a summary entry covering several. protein-ptefb-cdk9-ccnt1 is a summary entry covering two proteins, and the accident of which one also got a gene entry went the wrong way: CCNT1 has gene-ccnt1, CDK9 has nothing. Every CDK9 claim in this graph therefore lives in a mechanism entry (mechanism-cdk9-phosphorylates-aff4-sec-assembly) or a target entry (target-cdk9-inhibition-kmt2a-r) - both of which assume the protein rather than describe it.
That matters beyond filing. The graph holds the pause machinery and the release machinery and nothing about the reservoir. NELF is a complex entry plus gene-nelfb and gene-nelfe; DSIF is gene-supt4h1 and gene-supt5h; the SEC is extensively mapped. The 7SK snRNP - HEXIM1, HEXIM2, LARP7, MEPCE and the 7SK RNA itself - is the switch that decides whether P-TEFb is available to be recruited at all, and for a fusion whose entire proposed mechanism is constitutive elongation, the negative regulator of elongation is the most obvious place a counter-mechanism could live.
This is why beat Q35 was dispatched this cycle against the 7SK/P-TEFb reservoir rather than against anything on the written priority list. The beat was chosen by an instrument, which is the second time running that has happened - Q32 came out of the prose-reference sweep the same way.
The instrument corrected itself once, and the number did not move
The first version accepted an entry as belonging to a protein only if its id was exactly gene-<symbol> or protein-<symbol>. That discarded 43 real per-protein entries filed as protein-<symbol>-domains, which is how this graph stores a domain map. Widened, re-run: recognised gene/protein entries went 152 to 178 and the union coverage stayed at 46 of 217, because none of the 43 was a partner of one of the six baits.
Worth recording precisely because it changed nothing. A correction that moves the headline is easy to notice; a correction that does not is the one a project skips, and then the next reader cannot tell whether it was made.
Complex entries are still deliberately not counted as coverage for their subunits - protein-nelf-complex, protein-ptefb-cdk9-ccnt1, protein-little-elongation-complex, protein-fact-complex, protein-nsl-complex, protein-prc1-1-complex. Counting them would make the measure agree with the rule it is trying to test.
refresh 2026 09 21
{
"union": "89 of 217 (41.0%) have their own entry, was 46 (21.2%)",
"per_bait": {
"KMT2A": "41/101 (40.6%)",
"MEN1": "17/30 (56.7%)",
"PSIP1": "12/28 (42.9%)",
"AFF4": "32/69 (46.4%)",
"DOT1L": "17/24 (70.8%)",
"AFF1": "15/25 (60.0%)"
},
"worst_covered_bait_now": "KMT2A itself, 41 of 101 (40.6%)",
"inverted_claim": "This entry and docs/coverage.md both say MEN1 is the worst-covered bait at 4 of 30 because 'menin has been studied here through the interface it presents and through its endocrine liabilities, neither of which enumerates partners'. MEN1 is now 17 of 30 (56.7%), the second-best covered. The reasoning was sound when written and the number is stale.",
"still_true": "119 of 217 curated partners have no entry, and 41.0% does not support the ledger's 'saturated for phase 1' grade on Q5. The original conclusion stands; only its magnitude changed.",
"instrument_bug_fixed": "run.py hardcoded generated='2026-09-20', so a re-run stamped a stale date onto fresh numbers. Now time.strftime at run time.",
"script": "analyses/core-complex-interactome-gap/run.py"
}- Run the same diff for the 3' partners the graph has beats for - MLLT1, MLLT3, MLLT10, AFF3, ELL - and see whether the 21% figure is a property of the core scaffold or of the graph.
- Cluster IntAct's supporting publications by research group before counting them, exactly as ana-source-independence-by-lab does for the bibliography, and re-rank the queue on that.
- ESR1 appears against four of six baits and occurs nowhere in 1,260 entries. Decide whether menin's ESR1 cofactor role belongs in the endocrine beat or is out of scope, and record the decision either way rather than leaving it absent.
- Decide what the graph means by saturation. Counter-argument coverage hit 100% and stopped discriminating; beat entry counts say Q5 is saturated at 126 entries and an external database says 21%. Neither is wrong and they are not measuring the same thing.
- E1established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.analysis
Across IntAct's curated interactors of KMT2A, MEN1, PSIP1, AFF4, DOT1L and AFF1 - 651 interaction rows, 217 distinct human partners - 46 (21.2%) have an entry of their own in this graph and 18 more are named in some id, title or alias without being an entry. Per bait, coverage runs from MEN1 at 4 of 30 to DOT1L at 11 of 24.
Diffing the curated interactome of the KMT2A::AFF1 core scaffold against the graph's own per-protein entries · Oncofusion knowledge graph (internal analysis) 2026What this evidence cannot show
A measurement of this repository against IntAct on 2026-09-20, so established as a fact about the corpus and not about the biology. **Both halves of the ratio are soft.** The numerator excludes complex-roster entries by design, which understates coverage for anyone who thinks a roster counts. The denominator is IntAct's curation, which mixes structural work with pooled screens and has no quality threshold - the AFF1 run's first row paired it with a *Francisella tularensis* protein. **And an interactor of KMT2A is not an interactor of KMT2A::AFF1**: the fusion loses everything C-terminal of roughly residue 1444, including the SET domain, the PHD fingers and the bromodomain, and this script cannot tell which side of the breakpoint a contact maps to.
Evidence that argues against this (1)
- The AFF1-only run reported 48.0% coverage on 2026-09-19 by the looser symbol-appears-anywhere measure, against 60.0% here for the same bait by that same measure. The difference is entries added in between, not a disagreement - but it shows how fast this number moves, and a coverage percentage that moves 12 points in a day is a weak basis for calling any beat saturated **or** unsaturated. Oncofusion knowledge graph (internal analysis) 2026
- E2established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.journal-article
Fourteen of the 29 read-queue rows draw both of their publications from PMID 28514442 and PMID 33961781, which are BioPlex 2.0 (Nature 2017, Huttlin first author, Harper last) and BioPlex 3.0 (Cell 2021, Huttlin first author, Gygi last) - sequential releases of one affinity-purification platform. A two-publication threshold applied to IntAct evidence therefore does not measure independent observation.
What this evidence cannot show
Both records fetched from PubMed efetch on 2026-09-20 and titles, journals, years and first and last authors read back. **The inference that two releases of one platform are one observation is a judgement, not a measurement** - BioPlex 3.0 added a second cell line (HCT116 alongside HEK293T) and re-ran baits, so a partner recovered in both has been seen in two cellular contexts. That is more than nothing and less than two laboratories.
Evidence that argues against this (1)
- The same-platform objection cuts against this analysis too. IntAct itself is one curation effort with one set of inclusion decisions, so every number above inherits its blind spots - and the graph has already logged that a symbol-driven query cannot see a prey named only in a supplement. Nature 2017
- E3established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.analysis
CDK9 is the best-evidenced partner in the union - 30 IntAct rows across 8 publications and 3 of the 6 baits - and has no entry of its own, appearing only inside protein-ptefb-cdk9-ccnt1, a summary entry covering two proteins, while CCNT1 has gene-ccnt1. The 7SK snRNP has no entry of any kind: 7SK is mentioned 36 times across 13 entries, HEXIM1 16 times, and MEPCE never.
Diffing the curated interactome of the KMT2A::AFF1 core scaffold against the graph's own per-protein entries · Oncofusion knowledge graph (internal analysis) 2026What this evidence cannot show
Counted on disk on 2026-09-20 across 1,260 entries. **The absence of an entry is not the absence of the content** - CDK9's role in SEC assembly is written at `mechanism-cdk9-phosphorylates-aff4-sec-assembly` and its inhibition at `target-cdk9-inhibition-kmt2a-r`, so what is missing is the protein as a thing, not the biology. Whether that matters depends on whether you take the one-entry-per-thing instruction as a filing convention or as a claim about how the graph should be read.
Evidence that argues against this (1)
- PMID 21729782, fetched and read back as the MED26 docking paper (Cell 2011, Takahashi first, Conaway last), recovers CDK9, CCNT2 and MED19 against AFF4 in one purification - which is an argument that the complex entry, not the per-protein entry, is the unit the experiment actually resolves. A roster entry is the honest shape for a co-purification; the per-protein entry is the honest shape for everything else known about the protein. Cell 2011
- E4established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.journal-article
Several top-ranked queue entries resolve to experiments whose subject is unrelated to leukaemia: AFG2A and AFG2B - current symbols for SPATA5 and SPATA5L1 - come from a replisome-proteostasis tandem affinity purification, and BUD13, ILF3 and RPS11 come from an RNA-binding-protein BioID2 map.
The SPATA5-SPATA5L1 ATPase complex directs replisome proteostasis to ensure genome integrity · Cell 2024What this evidence cannot show
Both PMIDs fetched and read back on 2026-09-20. **Calling these background is an interpretation.** A replisome complex recovering KMT2A is consistent with abundance artefact and also consistent with the replication-associated biology this graph records elsewhere in its break-machinery beat; the analysis asserts the first because the paper's own subject gives no reason to look for KMT2A, which is weaker than an experiment.
Evidence that argues against this (1)
- Dismissing proximity hits as background is how IGF2BP3 stayed invisible to this project for thirty cycles - a post-transcriptional regulator that complex-roster enumeration could not see, found only by a literature-recall sweep. The same RBP map cited here as background is the instrument that recovered AFF1 as a prey. Nature Communications 2024
- E5established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.analysis
Widening the per-protein id rule to accept protein-<symbol>-domains raised the recognised gene/protein entry count from 152 to 178 and left union coverage unchanged at 46 of 217.
Diffing the curated interactome of the KMT2A::AFF1 core scaffold against the graph's own per-protein entries · Oncofusion knowledge graph (internal analysis) 2026What this evidence cannot show
An internal re-run on 2026-09-20. The rule is still a pattern match on ids and will miss any per-protein entry filed under a third convention; nothing enforces the naming convention, so this measure degrades silently as the graph grows.
Evidence that argues against this (1)
- This graph's independence audit had to correct itself the same way - its first keying collapsed sixteen internal analyses sharing one API URL into a single source, and no validator here would have caught it. Two id-keying errors in two audits is a pattern in the instruments, not in the data. Oncofusion knowledge graph (internal analysis) 2026
- E6moderate confidence 3 of 5: One strong study, or several smaller consistent ones.analysis
Re-run 2026-09-21, the same instrument over the same six baits gives 217 distinct human partners of which 89 (41.0%) now have an entry of their own, 9 are mentioned without being a thing and 119 are absent entirely -- up from 46 (21.2%) when this entry was written. Per bait: KMT2A 41/101 (40.6%); MEN1 17/30 (56.7%); PSIP1 12/28 (42.9%); AFF4 32/69 (46.4%); DOT1L 17/24 (70.8%); AFF1 15/25 (60.0%); The ranking has INVERTED: MEN1, described in this entry and in docs/coverage.md as the worst-covered bait at 4 of 30, is now the second-best at 17 of 30 (56.7%), and the worst-covered bait is KMT2A itself at 41 of 101 (40.6%).
What this evidence cannot show
IntAct's contents move between runs, so part of any change is the database and not this graph -- the row count and partner count should be compared before attributing a delta to our own work, and this re-run returns the same 217 union partners as the original, which argues the denominator was stable and the numerator really did move. The measure counts the EXISTENCE of a per-protein entry, not its quality or its depth, so 41.0% is a structural coverage figure and not a saturation claim. It also inherits the original's known false positives: H3C1 tops the missing queue by construction because histones belong here as marks and interfaces rather than as genes. Finally, the script's `generated` field was HARDCODED to 2026-09-20 and stamped that stale date onto these fresh numbers; it now uses the run date, and that bug is the reason this refresh was nearly misread as the old measurement.
Evidence that argues against this (2)
- A doubling of structural coverage does not show the interactome is better understood, and the ledger's original point survives the refresh: 41.0% is still not what 'saturated for phase 1' implies, and 119 of 217 curated partners still have no entry at all. The number moved because tranches were written, and writing an entry per partner is exactly the activity this measure rewards, so it is partly self-referential.
- The MEN1 inversion is the least flattering reading available: it means the figure this project singled out as its most damning coverage gap -- 'the worst-covered is the one the therapeutic hypothesis is about' -- sat uncorrected in the live ledger long after it had been fixed by ordinary tranche work. A stale weak spot misdirects effort as surely as a stale strength overstates it, and nobody re-ran a cheap instrument for several cycles.
the diff that surfaced ESR1 against four of six core baits
NAMES A CLASS ITS DENOMINATOR NEVER CONTAINED: that analysis measures coverage against IntAct's curated interactors of KMT2A, MEN1, PSIP1, AFF4, DOT1L and AFF1 -- the fusion's COMPONENT proteins. IntAct separately holds 47 interaction rows whose participant is a KMT2A fusion CONSTRUCT, and gene_of() drops all of them silently because a construct interactor has an empty interactorXrefs. The coverage figure is therefore about component proteins only. It would not have moved, because all 18 partners are already counted via their wild-type records.
re-measures the same instrument at 47.5%% against its 21.2%%, and corrects the ledger line that credited that measurement to cycle 71 when it is from cycle 18
its proposed laboratory fix demoted nothing until the merge was added
the same independence overcount, now found inside a curated database
a summary entry covering two proteins, where only one got an entry of its own
the partner that did get its own entry
where every CDK9 claim currently lives
the other home of CDK9 claims
- supports →A BioID hit is a neighbour, not a complex member - and the two methods are known to disagree
why proximity rows in the queue are not complex membership
the source of three queue rows
- related to →First systematic enumeration of the KMT2A fusion interactome, and the diff against this graph
the reading-based enumeration this database diff is a control on
- related to →CSNK2A1 (casein kinase 2 alpha) - the one kinase that turns up three separate times in KMT2A biology
the paralogue whose partner CSNK2A2 has no entry
the Mediator subunit whose neighbours have no entries
the precedent for a real partner invisible to roster enumeration
the same gap measured against a curated database instead of our own text
the diff that produced the 262
the same measurement family, one cycle on: the coverage figure this instrument produces is a floor computed on 64% of the IntAct record
CORRECTS ITS HEADLINE AND IS THE REASON THIS INSTRUMENT EXISTS: that entry's figure of 46 of 217 (21.2%) is now 89 of 217 (41.0%), and its named worst-covered bait, MEN1 at 4 of 30, is now the second-BEST at 17 of 30 while KMT2A's own partner list is the worst at 40.6%. Its underlying conclusion survives -- 119 partners still have no entry -- but the specific gap it singled out had been closed by ordinary tranche work while the paragraph went on being quoted.
the MED19 row's n_baits of 2 is one fusion-construct record matched twice, so the queue's bait count is an artifact
two of seven queue rows should NOT become entries, so the raw gap of 119 overstates the number of writable things
the 89/217 figure is computed on a PSICQUIC mirror whose newest publication is from 2024; both numerator and denominator are floors