Oncofusion

start / graph / ana-the-unwritten-interactome-partners-are-better-observed-than-the-written-ones

Analysisstrong confidence 4 of 5: Replicated in peer-reviewed work by more than one group.Q78-interactome-absent

The twelve partners with no entry are three times LESS spoke-expanded than the interactome they came from - 23.1% spoke-only against a 70.6% null, Fisher p = 0.00068

also called Q78 absence set provenance · spoke-only in the absence set · interactome gap quality

Everyone assumed the leftover partners nobody had written up were the weakest ones. Measured against the whole database, they are the opposite: three quarters of them rest on experiments somebody actually did, where across the interactome as a whole only three in ten do.

The same thing, for a scientist

Cycle 43 established that **70.6% of this interactome's 449 curated partner pairs rest only on spoke-expanded rows** - curator-inferred binaries nobody observed [E2]. The standing expectation carried into this beat was that a single-record partner is usually weak and that the unwritten residue is atlas-only material. **Measured on the thirteen bait-partner pairs of the twelve named absent partners: 3 are spoke-only, 23.1% (Wilson 95% CI 8.2-50.3%), against the 70.6% null - Fisher exact two-sided p = 0.00068, one-sided binomial P(X<=3) = 0.00054** [E1][E2]. Ten of thirteen pairs carry at least one non-spoke record, one carries an `MI:0407 direct interaction`, and **eight of the twelve partners come from a focused paper rather than a proteome-scale atlas** [E1]. The residue is not the dregs. **Two cycles of interactome work removed the atlas-only partners first, and what is left is the good material nobody happened to write**, which is the opposite selection from the one cycle 42 predicted. The beat's second finding is a measurement defect in its own dispatch: **the record counts supplied to it were wrong for 8 of 12 partners** [E3].

Go deeper
The measurement, with its null written down

Brief rule 84: a proportion is not a result until its null is written down. Here it is.

k/npointWilson 95%
spoke-only, absent-partner pairs3/1323.1%8.2 - 50.3%
spoke-only, all IntAct pairs of the six core proteins (null)317/44970.6%66.2 - 74.6%
carry at least one non-spoke record10/1376.9%49.7 - 91.8%
carry an MI:0407 direct-interaction record1/137.7%1.4 - 33.3%

Fisher exact two-sided, 3/13 against 317/449: p = 0.00068. One-sided binomial against p = 0.7060: P(X <= 3) = 0.00054.

The interval is wide - 8.2 to 50.3 - and brief rule 87 says not to build a direction argument on an interval that spans the comparison. It does not span it: the upper bound, 50.3%, is twenty points below the null's lower bound of 66.2%, so the direction survives at n = 13. What does not survive is any precise estimate of how much better; that would need the whole unwritten set, not twelve partners.

The three spoke-only pairs are AR-AFF4, TCF4-DOT1L and BRINP1-DOT1L, and two of the three are the two partners this beat declined 1. The spoke flag and the decline verdict agreed without being made to.

Why the direction inverts the cycle-42 expectation, and why that is not a contradiction

Cycle 42 found the absent partners concentrated in the atlas-only group - 13 of 15 named absent ones 3. That was true when measured. Both statements are true of different populations: cycle 42 measured the absent set before two cycles of work, and cycles 42 and 43 then wrote up the atlas-only partners (the Hein DOT1L spoke set, the AFF4 two-hybrid set) or declined them. What remained for this beat is the complement.

So this is not a refutation of cycle 42, it is the shape of a queue being worked in the wrong order - the weakest material was written first because it was the material the coverage script named first. The generalisable point is the one brief rule 87 keeps making: a proportion measured on a residue is a statement about what was removed, not about what the residue is like.

The dispatch counts were wrong for 8 of 12, and here is why

The record and spoke counts in this beat's dispatch table disagree with a fresh REST pull for eight of the twelve partners 13:

partnerbrief recordsREST recordsbrief spokeREST spoke
AR15 (2 baits, 2 pubs)03
NR1H31501
RBBP83400
SUMO12400
SKP21200
NR1H21200
BAG61200
TCF41212

Three causes, all diagnosable without access to the upstream script:

  1. Reverse-direction rows. IntAct curates A-as-bait and B-as-bait as separate records. A count that deduplicates on the unordered pair loses the reciprocal arm - which is an internal control and should be reported, not collapsed.
  2. Non-human accessions. NR1H3 and NR1H2 carry mouse rows under O88559/Q9Z0Y9/Q60644, invisible to a human-accession query. This is brief rule 93 one level further down: the species of the accession is as much a query-form restriction as the identifier type.
  3. Second baits. AR is fished by KMT2A and AFF4, and a partner-keyed table that records one bait per partner drops the other pair entirely.

None of these makes the dispatch wrong about which partners were absent. They make the per-partner strength ranking in it unusable, and the ranking is what a beat prioritises by. The full per-pair table is persisted in data.pairs on this entry (brief rule 90: persist the identities, not the count).

Facts and figures
scriptnot scripted as an analyses/ run; the fetch is a single IntAct REST sweep and the per-pair result is persisted in full below (brief rule 90)
statusrun
fetched2026-09-21
endpointhttps://www.ebi.ac.uk/intact/ws/interaction/findInteractions/<accession-or-pmid>?page=N&pageSize=100
n partners12
n pairs13
n records30
n publications10
spoke only pairs3
spoke only PCT23.1
null spoke only pairs317
null n pairs449
null PCT70.6
fisher exact two sided p0.00068
binomial one sided p le 30.00054
non spoke supported pairs10
non spoke supported PCT76.9
mi0407 direct pairs1
mi0407 PCT7.7
focused source partners8
atlas source partners2
control panel partners1
proximity map partners1
dispatch count discrepancies8
pairs
TOPBP11.000TOPBP1: 1AR1.000AR: 1SREBF11.000SREBF1: 1FOXM11.000FOXM1: 1BRINP11.000BRINP1: 1SKP22.000SKP2: 2NR1H22.000NR1H2: 2BAG62.000BAG6: 2TCF42.000TCF4: 2RBBP84.000RBBP8: 4SUMO14.000SUMO1: 4AR4.000AR: 4NR1H35.000NR1H3: 5
spoke only wilson95
[
  8.2,
  50.3
]
spoke only pair IDS
[
  "AR-AFF4",
  "TCF4-DOT1L",
  "BRINP1-DOT1L"
]
null wilson95
[
  66.2,
  74.6
]
non spoke wilson95
[
  49.7,
  91.8
]
mi0407 wilson95
[
  1.4,
  33.3
]
pairs — the numbers behind the chart
[
  {
    "partner": "RBBP8",
    "accession": "Q99708",
    "bait": "PSIP1",
    "records": 4,
    "spoke": 0,
    "spoke_only": false,
    "types": [
      "MI:0407 direct interaction",
      "MI:0915 physical association"
    ],
    "pubs": [
      "22773103"
    ],
    "source_class": "focused",
    "brief_records": 3,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "SUMO1",
    "accession": "P63165",
    "bait": "PSIP1",
    "records": 4,
    "spoke": 0,
    "spoke_only": false,
    "types": [
      "MI:0914 association",
      "MI:0403 colocalization"
    ],
    "pubs": [
      "22748127"
    ],
    "source_class": "focused",
    "brief_records": 2,
    "brief_spoke": 0,
    "verdict": "written (covalent modifier, category-distinct)"
  },
  {
    "partner": "TOPBP1",
    "accession": "Q92547",
    "bait": "KMT2A",
    "records": 1,
    "spoke": 0,
    "spoke_only": false,
    "types": [
      "MI:0915 physical association"
    ],
    "pubs": [
      "17913746"
    ],
    "source_class": "focused study of a different protein; control panel",
    "brief_records": 1,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "AR",
    "accession": "P10275",
    "bait": "KMT2A",
    "records": 4,
    "spoke": 2,
    "spoke_only": false,
    "types": [
      "MI:0914 association",
      "MI:0915 physical association",
      "MI:2364 proximity"
    ],
    "pubs": [
      "22722839",
      "33640491"
    ],
    "source_class": "focused x2",
    "brief_records": 1,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "AR",
    "accession": "P10275",
    "bait": "AFF4",
    "records": 1,
    "spoke": 1,
    "spoke_only": true,
    "types": [
      "MI:2364 proximity"
    ],
    "pubs": [
      "33640491"
    ],
    "source_class": "proximity map",
    "brief_records": 0,
    "brief_spoke": 0,
    "verdict": "written (weak arm of gene-ar)"
  },
  {
    "partner": "SKP2",
    "accession": "Q13309",
    "bait": "KMT2A",
    "records": 2,
    "spoke": 0,
    "spoke_only": false,
    "types": [
      "MI:0915 physical association"
    ],
    "pubs": [
      "20818375"
    ],
    "source_class": "focused",
    "brief_records": 1,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "NR1H3",
    "accession": "Q13133",
    "bait": "MEN1",
    "records": 5,
    "spoke": 1,
    "spoke_only": false,
    "types": [
      "MI:0915 physical association",
      "MI:0914 association"
    ],
    "pubs": [
      "25962847"
    ],
    "source_class": "focused",
    "brief_records": 1,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "NR1H2",
    "accession": "P55055",
    "bait": "MEN1",
    "records": 2,
    "spoke": 0,
    "spoke_only": false,
    "types": [
      "MI:0915 physical association"
    ],
    "pubs": [
      "25962847"
    ],
    "source_class": "focused",
    "brief_records": 1,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "SREBF1",
    "accession": "P36956",
    "bait": "MEN1",
    "records": 1,
    "spoke": 0,
    "spoke_only": false,
    "types": [
      "MI:0915 physical association"
    ],
    "pubs": [
      "25962847"
    ],
    "source_class": "focused",
    "brief_records": 1,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "FOXM1",
    "accession": "Q08050",
    "bait": "MEN1",
    "records": 1,
    "spoke": 0,
    "spoke_only": false,
    "types": [
      "MI:0915 physical association"
    ],
    "pubs": [
      "25609649"
    ],
    "source_class": "atlas (non-spoke validation panel)",
    "brief_records": 1,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "BAG6",
    "accession": "P46379",
    "bait": "DOT1L",
    "records": 2,
    "spoke": 0,
    "spoke_only": false,
    "types": [
      "MI:0914 association"
    ],
    "pubs": [
      "22373577"
    ],
    "source_class": "focused",
    "brief_records": 1,
    "brief_spoke": 0,
    "verdict": "written"
  },
  {
    "partner": "TCF4",
    "accession": "P15884",
    "bait": "DOT1L",
    "records": 2,
    "spoke": 2,
    "spoke_only": true,
    "types": [
      "MI:0914 association"
    ],
    "pubs": [
      "21103407"
    ],
    "source_class": "focused",
    "brief_records": 1,
    "brief_spoke": 1,
    "verdict": "DECLINED - symbol mis-assignment; gene-tcf7l2 written instead"
  },
  {
    "partner": "BRINP1",
    "accession": "O60477",
    "bait": "DOT1L",
    "records": 1,
    "spoke": 1,
    "spoke_only": true,
    "types": [
      "MI:0914 association"
    ],
    "pubs": [
      "26496610"
    ],
    "source_class": "atlas",
    "brief_records": 1,
    "brief_spoke": 1,
    "verdict": "DECLINED - cycle-42 refusal upheld on re-check"
  }
]
dispatch discrepancy causes
[
  "reverse-direction rows collapsed by deduplicating on the unordered pair, which discards the reciprocal-co-IP internal control",
  "mouse-accession rows invisible to a human-accession query (O88559 Men1, Q9Z0Y9 Nr1h3, Q60644 Nr1h2) - brief rule 93 extended to species",
  "a partner fished by two baits recorded under one (AR is fished by KMT2A and by AFF4)"
]
verdicts
{
  "written": 10,
  "declined": 2
}
declined
{
  "TCF4 (P15884)": "symbol mis-assignment; gene-tcf7l2 written instead",
  "BRINP1 (O60477)": "cycle-42 refusal upheld on re-check"
}
How this could bite us back
  • This result makes the remaining interactome gap look more valuable, which is a conclusion that flatters the beat that measured it. The interval is 8.2-50.3% and the n is 13; the direction is solid and the magnitude is not.
  • The spoke flag records how a curator filed an experiment, not how good it was, and it disagrees with the source-class judgement at least once in thirteen. Ranking partners on it alone would put an atlas validation panel above a focused paper's n-ary deposition.
  • Two of the three spoke-only pairs are the two partners declined here. That agreement is reassuring and it is also circular if the flag influenced the decision - it did not, since both declines rest on identifier evidence, but a later reader cannot see that from the numbers alone.
Still open
  1. What is the spoke-only rate across the WHOLE unwritten set rather than these twelve? n = 13 gives a direction and no useful estimate of size, and the full set is one script away.
  2. Does the graph's written set look better or worse than this residue? Cycle 43 measured the written pairs at 52.9% spoke-only; this residue is at 23.1%, which would mean the graph has been writing the WORSE material - a claim these two intervals overlap too much to make, and one that a single combined analysis would settle.
  3. Should the coverage script report reciprocal-direction rows separately instead of collapsing them? They are the commonest internal control in this database and the current counting makes them invisible.
Every source behind this entry (3)
  1. E1established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.database

    A fresh IntAct REST pull on 2026-09-21 of all twelve named absent partners against the six core baits returns 13 bait-partner pairs and 30 records, of which 3 pairs (AR-AFF4, TCF4-DOT1L, BRINP1-DOT1L) are spoke-only, 10 carry at least one non-spoke record, 1 (PSIP1-RBBP8) carries an MI:0407 direct interaction, and 8 of the 12 partners derive from a focused publication rather than a proteome-scale atlas; the per-pair identities are persisted in this entry's data.pairs.

    What this evidence cannot show

    One database on one day, REST endpoint (brief rule 93). n = 13 pairs is small and the Wilson interval is correspondingly wide. Records are NOT deduplicated to publications, which is the caveat the source census carries and which applies here too - 30 records come from 11 publications. The human-accession filter used here would itself miss mouse-accession rows for partners other than the LXRs; the LXR mouse rows were recovered only because the publication was queried by PMID as a cross-check, so this count is a floor for the same reason the dispatch's was.

    Evidence that argues against this (1)
    • The spoke-expansion flag measures how a curator recorded an experiment, not how good the experiment was. A focused paper that deposits an n-ary complex gets spoke-flagged; an atlas that deposits a validation western does not. FOXM1 in this set is exactly that case - a non-spoke row from a 4,119-row atlas - so the flag and the source class disagree at least once in thirteen. EMBL-EBI IntAct 2026
  2. E2established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.database

    The null for this comparison is that 317 of 449 IntAct partner pairs of the six core proteins (70.6%, Wilson 66.2-74.6%) rest only on spoke-expanded rows, established in cycle 43 from 908 records at the same endpoint.

    What this evidence cannot show

    The null is this project's own measurement (ana-two-thirds-of-the-curated-interactome-is-a-row-nobody-observed) and inherits its caveats, including no deduplication to publications. The absent-partner set is a subset of the same population, so the two are not independent samples - the Fisher test is between a subset and the whole rather than between two disjoint groups, which makes the p value slightly conservative in the direction of the observed effect.

    Evidence that argues against this (1)
    • Re-derived at the same endpoint on the same date, the null lands outside its own interval and the headline p value loses a factor of 27. Complete paginated fetches of all six baits on 2026-09-21 return 1,092 rows carrying only 791 DISTINCT interaction ACs - 301 rows are one interaction returned twice because both partners are core baits - and deduplicating on interaction AC gives 268 of 452 pairs spoke-only, 59.3%, against the stated 70.6% (Wilson 66.2-74.6%). Recomputing this entry's own test against that null: Fisher exact two-sided for 3/13 against 268/452 is p = 0.0186, not 0.00068, and the one-sided binomial P(X<=3 | n=13, p=0.593) is 0.0090, not 0.00054. THE DIRECTION SURVIVES and the strength of evidence does not: 0.0186 is an ordinary result where 0.00068 reads as decisive. The pair count (452 here, 449 stated) reproduces; the record count (791 or 1,092 here, 908 stated) does not, which is the signature of a partial deduplication. EMBL-EBI IntAct 2026
  3. E3established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.database

    Cycle 42 found the absent partners concentrated in the atlas-only group, 13 of 15 named absent ones, and cycle 43 recomputed coverage on the REST endpoint at 56 of 72 bait-supported human partners with an entry; the present measurement is on the residue after those two cycles wrote or declined the atlas-only material, so it describes a different population rather than contradicting either figure.

    What this evidence cannot show

    An internal citation to this project's own prior analyses, not to a primary source. The claim that the two cycles removed the atlas-only material preferentially is an inference from which partners those cycles wrote, not a designed comparison; nobody randomised the order in which the queue was worked.

    Evidence that argues against this (2)
    • The 'different population' defence is right and the stated reason for it is not, and the difference is checkable because cycle 42 persisted its memberships. Its results.json carries partners_resting_only_on_screens (15 accessions) and partners_with_a_focused_source (41). Of this beat's twelve absent partners, exactly ONE - O60477/BRINP1 - appears in either list. The other eleven appear in NEITHER. So these twelve are not the residue of cycle 42's 56 bait-supported partners after the atlas-only ones were written; they are almost entirely partners cycle 42's bait-supported filter never selected. That makes 'cycles 42 and 43 wrote up the atlas-only partners and what remained for this beat is the complement' an account of a queue that these accessions were mostly not in - and it means the 70.6% all-pairs census and cycle 42's bait-supported set are two different denominators being narrated as one. The inversion this entry reports is real against the census null; it is not evidence about how cycle 42's queue was worked. this graph, analyses/bait-supported-filter-audit/results.json 2026
    • The pointer does not resolve to what the title names. This citation's title is 'this graph's own cycle-42 bait-supported filter audit and cycle-43 REST coverage recount, as recorded in docs/king-log/2026-09-21-cycle-43.md and docs/coverage.md', and its URL is IntAct's findInteractions endpoint for Q03164, which contains neither document. The same shape appears on E4 of ana-the-dot1l-tcf4-partner-is-tcf7l2-not-tcf4. An internal citation whose URL points somewhere else is unauditable in exactly the way the external-citation checks exist to prevent; the resolvable form here is the analyses/ path, which does exist and does persist the numbers (analyses/bait-supported-filter-audit/results.json, analyses/interactome-coverage-on-rest/results.json). EMBL-EBI IntAct 2026
Connected to