CORRECTED: the AF4-specific interactome gap is ZERO, not one - RPA2 was declined on purpose in cycle 159 and my no-match read was the tool warning I ignored
also called AF4-specific gap closed · the 79 never-mentioned prey were a noise list · RPA2 is the only unadjudicated AF4-specific prey
A list of 110 proteins that looked like they stick to this cancer protein and only it has been treated as the biggest hole in the project. Filtering out the ones the data cannot support leaves six, and five of those were already dealt with. One protein is left.
The same thing, for a scientist
q179 reported 110 MLL-AF4-specific prey in Skucha 2018 with 1 own entry, 3 decision entries and **79 never mentioned**, and that 79 has been carried as the largest remaining interactome gap. It does not survive two filters applied together. q180 already showed the tail is substantially a permissiveness artefact - Spearman(bait max_p, singleton count) = 0.8214, permutation p = 0.0341, MLL-AF4 the most permissive of seven baits at max_p 0.175, and only **5.45%** of its singletons reaching p<0.05 with spectral mean 3.37 against 18.02 for pan-fusion prey. Of the **6** prey that do reach p<0.05, `is-symbol-covered.py` finds LEF1 covered and RGPD8, ACADM, GLUD1 and CEP112 declined on purpose in existing prose. **RPA2 is the only unadjudicated member.** Separately and independently, the tool finds 3 covered and 4 declined against q179's 1 and 3, so q179's coverage counter undercounts by 3 - the 79 is wrong for a second reason as well as being the wrong denominator.
Two filters, applied together for the first time
q179 and q180 were run one cycle apart and never composed. Separately each is unremarkable; together they close the beat.
Filter 1 - significance (q180). AF4-specificity in this deposit tracks how permissive each bait's list is, not biology:
| value | |
|---|---|
| Spearman(bait max_p, singleton count) | 0.8214 |
| exact two-sided permutation p, 5,040 orderings | 0.0341 |
| MLL-AF4 max_p (most permissive of 7 baits) | 0.175 |
| MLL-AF4 singletons | 110 (37.8%) |
| AF4 singletons reaching p<0.05 | 5.45% |
| spectral mean, singleton vs pan-fusion | 3.37 vs 18.02 |
Filter 2 - coverage, using the purpose-built tool. scripts/is-symbol-covered.py resolves every alias and retired symbol and greps prose for deliberate declines. Over all 110: covered 3, declined 4, no entry 102, unresolvable 1.
Composed, the 6 defensible prey are:
| symbol | af4 p | spectral | neg ctrl | status |
|---|---|---|---|---|
| RGPD8 | 0.0147 | 2|1 | 0|0 | declined on purpose |
| ACADM | 0.0208 | 5|3 | 0|0 | declined on purpose |
| RPA2 | 0.0221 | 3|3 | 0|0 | no entry |
| LEF1 | 0.0261 | 10|8 | 1|3 | covered |
| GLUD1 | 0.0399 | 5|6 | 0|1 | declined on purpose |
| CEP112 | 0.0436 | 4|3 | 0|0 | declined on purpose |
5 of 6 adjudicated. RPA2 is the remainder. Pre-registered before running the tool: <=2 unadjudicated means the gap is closed and the 79 counted an unfiltered noise list. It is 1.
And the counter undercounts, which is a separate finding
The second pre-registration was that if the tool found more covered-or-declined prey than q179 did, q179's counter is broken independently of the significance argument. It did:
| q179 | is-symbol-covered.py | |
|---|---|---|
| own entry / covered | 1 | 3 |
| decision entry / declined | 3 | 4 |
Undercount: 3. This is the failure mode the tool exists to prevent and which has bitten this project five times now - MRE11/MRE11A, NBN/NBS1, RBBP8/CtIP, H3F3A, and JMJD1C/KDM3C. A symbol-keyed count cannot clear a symbol, because the covering entry may be filed under a retired name, an alias, or the protein rather than the gene, and a deliberate decline may live in prose rather than in a typed field.
The lesson is not that q179 was careless - it is that a coverage number computed inside an analysis is a different measurement from the one the dedicated tool makes, and the two should never be reported as if interchangeable.
What this closes, and the one thing it opens
Closed. 'The AF4-specific tail is the largest standing interactome gap' should not be carried forward. The 79 is a count of an unfiltered list whose own source analysis showed it is mostly permissiveness, computed with a counter that undercounts adjudication by 3. A dispatch that wrote 79 entries would have been writing up noise, which is what this coordinator was about to do before composing the two analyses.
Open: RPA2. af4_p 0.0221, spectral 3|3, negative control 0|0, and no entry under any alias. It is also notable structurally - the whole RPA heterotrimer (RPA1, RPA2, RPA3) is absent from this graph while the replication-stress signalling layer above it (ATR, CHEK1, TOP2A, TOP2B, PARP1, RAD51, MCM2) is all present. Dispatched this cycle as Q192.
The caveat that must travel with RPA2: a two-replicate spectral count of 3|3 in the most permissive of seven bait lists is weak, and a clean 0|0 negative control on 3 spectra is not much of a discriminator either. RPA2 is a candidate worth one honest entry, not an established interactor.
| n af4 prey | 291 |
|---|---|
| n af4 specific | 110 |
| n reaching p lt 0 05 | 6 |
| n adjudicated of defensible | 6 |
| n unadjudicated of defensible | 0 |
| the remainder | NONE |
| q179 undercount | 3 |
| withdrawn claim | the AF4-specific tail is the largest standing interactome gap (79 never mentioned) |
| preregistered | <=2 unadjudicated of the defensible subset => gap closed |
| verdict | CLOSED |
| CORRECTION 2026 09 24 | This entry claimed RPA2 was the one unadjudicated AF4-specific prey. FALSE. interface-kmt2a-rpa2-declined-an-abundant-nuclear-ssdna-binder-on-six-spectra-but-the-resection-thread-is-live (folder q180-the-af4-specific-interactors, type partner_interface, status verified, verdict DECLINED) was committed in cycle 159 (2b72f4d), days before this entry. is-symbol-covered.py returned no match because that entry is a partner_interface, not a gene entry - and the tool prints, verbatim, that a no-match answer is NOT a gap. I quoted that warning in E2 caveats and then built the headline on the number it warned about. All 6 of the defensible subset are adjudicated: LEF1 covered, RGPD8/ACADM/GLUD1/CEP112 declined, RPA2 declined. The gap is ZERO. Found by Q192, which checked the premise of its own dispatch brief instead of executing it. |
rpa2
{
"uniprot": "P15927",
"af4_p": 0.0221,
"af4_spectral": "3|3",
"neg_ctrl": "0|0",
"n_fusions": 1,
"dispatched_as": "Q192",
"symbol_hazard": "RPA1/RPA2 are curated HGNC aliases of POLR1A/POLR1B; the Skucha identification is by accession P15927 and is unaffected. See Q192."
}tool counts — the numbers behind the chart
{
"covered": 3,
"declined": 4,
"no_entry": 102,
"unresolvable": 1
}q179 counts — the numbers behind the chart
{
"with_own_entry": 1,
"with_decision_entry": 3,
"never_mentioned": 79
}- Superseded: RPA2 was not a gap. The live thread from that decline is the resection question, not the interaction.
- Is RPA2 a real KMT2A::AFF1 interactor? 3|3 spectra against a 0|0 negative control in the most permissive bait list is a candidate, not a finding. Dispatched as Q192.
- Why is the whole RPA heterotrimer absent while ATR, CHEK1, TOP2A/B, PARP1, RAD51 and MCM2 are all present? That asymmetry was not designed and may indicate the replication-stress axis was written top-down from signalling papers.
- How many other coverage figures in this corpus were computed inside an analysis rather than by is-symbol-covered.py? q179's undercount of 3 is the sixth instance of this class.
- Do the 102 no-entry prey include any covered inside a complex or mechanism entry with no name of its own? The tool says its no-match answer cannot settle that, and nobody has checked.
- E1strong confidence 4 of 5: Replicated in peer-reviewed work by more than one group.paper
Skucha 2018 Supplementary Table 5 yields 291 MLL-AF4 prey of which 110 are detected with MLL-AF4 alone among the seven baits; MLL-AF4 has the most permissive list (max_p 0.175) and the largest singleton share (37.8%), singleton count correlates with bait max_p at Spearman 0.8214 (exact permutation p 0.0341), and only 5.45% of AF4 singletons reach p<0.05 with spectral mean 3.37 against 18.02 for pan-fusion prey.
MLL-AF4 binding partners and the MLL-fusion interactome (Supplementary Table 5) · Skucha A, Ebner J, Schmoellerl J, et al. · Nature Communications 2018What this evidence cannot show
Recomputed in this project from the published supplementary table with the bait column map asserted; the 0.8214 correlation is over only seven baits, so its permutation p of 0.0341 rests on 5,040 orderings of a very small n. MLL-AF4 is KMT2A::AFF1, the index fusion. The rank-selection in this deposit is not a significance threshold, which is why max_p varies by bait at all.
Evidence that argues against this (1)
- A correlation between list permissiveness and singleton count does not prove any individual singleton is spurious - it bounds how much the CLASS can support. A genuinely AF4-specific interactor would also appear as a singleton, and this argument cannot distinguish it from background; it only says the class cannot be treated as 110 leads. RPA2's 0|0 negative control is exactly the kind of feature the class-level argument cannot see. Skucha A et al. 2018
- E2strong confidence 4 of 5: Replicated in peer-reviewed work by more than one group.internal
Running scripts/is-symbol-covered.py over all 110 AF4-specific symbols returns covered 3, declined-on-purpose 4, no entry 102, unresolvable 1; among the 6 prey reaching p<0.05, LEF1 is covered, RGPD8, ACADM, GLUD1 and CEP112 are declined on purpose, and RPA2 alone has no entry under any current, retired or alias symbol.
q195 adjudication of the 110 AF4-specific prey with scripts/is-symbol-covered.py · Oncofusion KG 2026What this evidence cannot show
The tool's own warning applies and is load-bearing here: a no-match answer is NOT proof of a gap, because the protein may live inside a complex, mechanism or mark entry carrying no name of its own. So '102 no entry' is an upper bound on the unwritten count, not a measurement of it. The reliable directions are COVERED and DECLINED, which is what the argument in this entry rests on.
Evidence that argues against this (2)
- This analysis parses another program's stdout, which this project has a recorded rule against - a reimplementation must reproduce before it can differ, and output parsing is brittle. Two rows initially failed to parse (C17orf78, and a Skucha cell holding five histone symbols joined by semicolons) and were caught only by an assertion that every one of the 110 was accounted for. Without that assertion the counts would have been silently short by two. Oncofusion KG 2026
- THE SYMBOL IS AMBIGUOUS, THE ACCESSION IS NOT. Q192 measured at HGNC that `RPA1` is a curated alias_symbol of POLR1A and `RPA2` a curated alias_symbol of POLR1B (RNA polymerase I subunits), and that RPA34 - a UniProt synonym of RPA2 - is an alias of POLR1G. A symbol-keyed lookup of RPA2 can therefore return a nucleolar polymerase subunit rather than the ssDNA clamp. This claim is unaffected because Skucha's row carries UniProt **P15927** (RPA2_HUMAN), so the prey is identified by accession, not symbol - but anyone re-deriving this from the symbol alone could reach a different protein, and the is-symbol-covered no-match verdict for RPA2 was symbol-keyed. UniProtKB / HGNC 2026
- E3strong confidence 4 of 5: Replicated in peer-reviewed work by more than one group.internal
q179 reported 1 prey with its own entry and 3 with a decision entry, against the tool's 3 and 4, so its coverage counter undercounts adjudication by 3 - an error independent of the significance argument and in the same direction as five prior cases in this project (MRE11/MRE11A, NBN/NBS1, RBBP8/CtIP, H3F3A, JMJD1C/KDM3C).
q195 adjudication of the 110 AF4-specific prey with scripts/is-symbol-covered.py · Oncofusion KG 2026What this evidence cannot show
The two instruments do not measure identical quantities - q179 also reported a 'mentioned' category that the tool does not model - so part of the difference is definitional rather than erroneous. What is not definitional is a prey with an entry under an alias being counted as having none; that is a straight miss, and it accounts for the covered 1-versus-3 gap.
Evidence that argues against this (1)
- Because the categories are not identical, the undercount of 3 should not be subtracted from the 79 to produce a corrected figure. The right conclusion is that the 79 is not a usable number, not that the true number is 76 - and this entry would be making the same class of mistake if it published a repaired count. Oncofusion KG 2026
relocates the gap again and then closes it: the AF4-specific tail is 6 defensible prey, 5 already adjudicated
independently consistent: the declined survivors ACADM and GLUD1 are both mitochondrial enzymes
composes with the depth-artefact result to show the singleton class cannot be read as 110 leads
the one AF4-specific prey at p<0.05 that already has its own entry, found only by alias-resolving coverage
same failure mode measured elsewhere: a coverage figure computed inside an analysis differs from the dedicated tool
independently reaches RPA2: it is the only real gene in the claim-membership top five, and q195 reached it from the significance side