Oncofusion

start / graph / ana-q181-rescore-the-epigenetics-line-three-ways-before-anyone-fills-a-field

Analysismoderate confidence 3 of 5: One strong study, or several smaller consistent ones.Q181-epigenetics-dimension

RUN (by the King, cycle 159): the eight definitions span 55 points, from 36.8% to 78.8% on one population - every pre-registered reading fires, the beat is NOT refuted, and bare 'chromatin' alone moves it 25 points

also called q181 the three-way rescore · planned epigenetics metric variant sweep

**RUN.** The eight ways of counting give answers from 37% to 79% on exactly the same entries — a 55-point spread — so the headline figure was always a statement about the definition. The strictest reading, which asks not just whether a chromatin mark is named but where it acts, gives 24%. --- Before anyone changes the chromatin coverage score or starts filling in fields to raise it, run the same 541 entries through every reasonable definition of what 'covered' means and print all the answers together. If the answer swings wildly between definitions, the number was never measuring the thing people thought.

The same thing, for a scientist

> 🟢 **RUN 2026-09-24 by the King.** This entry specified the sweep, pre-registered how to read it, named the outcome that would refute its own parent beat, and forbade editing `check-pi-dimensions.py`. All four honoured: the script asserts the tool is unmodified before printing anything, and both regexes are **extracted verbatim from its source rather than retyped**. Script: `analyses/q181-is-the-epigenetics-gap-real/rescore.py`. > > **Population 593 gene/protein entries at commit 671ef21** (the spec said 541; the corpus grew while two agents wrote). > > | | definition | coverage | > |---|---|---:| > | **V0** | key names only — **the status quo** | **36.8%** (218) | > | V1 | + marks in data VALUES | 49.2% (292) | > | V2 | + narrow chromatin concepts | 53.8% (319) | > | **V3** | + bare 'chromatin' anywhere | **78.8%** (467) | > | V4 | V2 + declared-inapplicable | 53.8% (319) | > | V5 | V0 requiring a non-empty value | 36.6% (217) | > | **V6** | **strict: mark AND locus/cell state** | **23.8%** (141) | > | Vt | mark anywhere in entry | 53.1% (315) | > > **Spread 55.0 points.** The verdict tracks the definition, exactly as this entry suspected. > > **Every pre-registered reading fires, none ambiguous:** > - **V1 − V0 = +12.4** (threshold 8) → **the key-versus-value finding HOLDS.** > - **V3 − V2 = +25.0** (threshold 15) → **bare 'chromatin' is doing the work; report V2 only.** The generous vocabulary fix this entry advised against is now measured, and it is as bad as feared. > - **V0 − V5 = +0.2** (threshold 5) → **stratum A is NOT padded** — independently confirming the King's own audit in q184, which found 1 of 218 hollow. > - **V6 = 23.8%**, above the 15% floor → **the beat is NOT refuted.** Notation-versus-content remains the right frame. But 23.8% is the honest 'which mark, where' number and it is far below every other variant. > - Spread 55.0 ≫ 8 → the 'definitions don't matter' possibility is excluded. > > 🔵 **An unanticipated result: V4 is IDENTICAL to V2 (53.8%, the same 319 entries).** The three-state proposal adds **nothing** as specified, because all 8 entries declaring inapplicability already carry a matching key and were counted at V0. **So formally adopting the state would not move this number at all — the gain is entirely in making the CHECKER recognise it**, which is what q184 concluded from the other direction. > > 🔴 **A King error inside the run, fixed before publication.** The first V4 read **59.4%** because the inapplicable pattern included a bare `NOT APPLICABLE` — the corpus's **localization** convention, 81 entries. Narrowed to the epigenetics-specific wording it is 8 entries and V4 collapses onto V2. **q184 caught the identical conflation in a King measurement an hour earlier, and it was repeated here in a new script by the same author.** The comment in `rescore.py` records it at the line. --- This beat produced a corrected figure (~88% recorded-or-inapplicable against a printed 39.2%) that depends on choices this beat made: whether data values count, whether chromatin concepts count, whether a declared category statement counts, and whether 'is a chromatin protein' or 'which mark, where, in which state' is the standard. Each choice is defensible and each moves the answer by tens of points. The standing brief's own lesson - if the verdict tracks the threshold, you are measuring the ruler - says the right output is not one corrected number but all of them, computed in one pass over one population and printed adjacent. This analysis specifies that sweep. It is PLANNED and has NOT been run; the numbers below are the variants to compute, not results.

Go deeper
The variants to score, all over the same 541 entries
#definition of coveredwhat it tests
V0_EPI_KEY over data KEY NAMESthe status quo, 39.2%
V1V0 or _EPI_MARK over data VALUES onlydoes reading values fix it
V2V1 or a chromatin concept in data values (narrow list: accessibility, ATAC, nucleosome, super-enhancer, heterochromatin)the vocabulary fix
V3V2 or a chromatin concept anywhere including bare 'chromatin'the generous vocabulary fix the parent entry recommends AGAINST
V4V2 plus a declared-inapplicable state counted separatelythe three-state proposal
V5V0 but requiring the matched key's VALUE to be non-empty and not 'unknown'/'not established'the stratum-A audit nobody has done - this one can only go DOWN
V6strict: a named mark and a named locus or cell state in the same fieldthe 'which mark, where' reading of the PI dimension
Vt_EPI_MARK over the whole entrythe status quo's generous line, 54.7%

V5 and V6 are the two that can make the figure worse, and they are the reason this is a sweep rather than a fix. Every other variant raises the number, which is exactly the pattern that should make a reader suspicious of a beat proposing them.

What must be printed, and the pre-registered reading

Print all eight as one block with the population and commit stamped, the way check-pi-dimensions.py already prints its excluded topic-link and mechanism-link counts unclouded.

Pre-registered before the run, so the result cannot be read to taste:

  • If V1 - V0 is small (< 8 points), this beat's key-versus-value finding is overstated and the 71-entry count was measuring marks about KMT2A sitting in other proteins' payloads.
  • If V3 - V2 is large (> 15 points), bare 'chromatin' is doing the work and the vocabulary finding should be reported at V2 only.
  • If V5 is more than 5 points below V0, stratum A is padded and the corrected headline in the parent entry must come down.
  • If V6 is under 15%, the strict reading of the dimension is unmet across the board, the notation-versus-content distinction is beside the point, and the honest verdict flips from 'correct the number' to 'the dimension has barely been attempted'. This is the outcome that would refute this beat.
  • A third possibility is pre-registered explicitly: neither - the variants could cluster within a few points of each other, which would mean the definitional choices do not matter and the 39.2% is simply right.
Cost and constraint

One script, one pass over 3,032 files, under a minute. No external fetch.

Constraint: it must be a separate script, not an edit to check-pi-dimensions.py. The dispatch that produced this beat named modifying the measurement tool to improve its number as the single thing that would make the work worthless, and the sweep is most useful precisely while the canonical reporter still prints the uncorrected 39.2% beside it.

Facts and figures
scriptanalyses/q181-is-the-epigenetics-gap-real/rescore.py
statusexecuted
generated2026-09-24
tool modifiedfalse
must not modifyscripts/check-pi-dimensions.py
run byking, cycle 159
population593
commit671ef21
declared inapplicable epigenetics specific8
v4 equals v2true
king error fixed before publicationfirst V4 read 59.4% because the inapplicable pattern matched the localization NOT APPLICABLE convention; narrowed to 8 epigenetics-specific entries, V4 collapses onto V2
measurements
share0.238share: 0.238share0.368share: 0.368share0.788share: 0.788spread between the two de…15.5spread between the two definitions the existing reporter already prints: 15.5percentage_points55.0percentage_points: 55
results
V623.8V6: 23.8V536.6V5: 36.6V036.8V0: 36.8V149.2V1: 49.2Vt53.1Vt: 53.1V253.8V2: 53.8V453.8V4: 53.8V378.8V3: 78.8
deltas
V0_minus_V50.200V0_minus_V5: 0.2V1_minus_V012.4V1_minus_V0: 12.4V3_minus_V225.0V3_minus_V2: 25spread55.0spread: 55
variants
[
  "V0 key names (status quo)",
  "V1 + data values",
  "V2 + narrow chromatin concepts",
  "V3 + bare chromatin",
  "V4 + declared-inapplicable as a third state",
  "V5 V0 requiring a non-empty value",
  "V6 strict: mark AND locus/cell state",
  "Vt whole-entry mark (status quo generous line)"
]
preregistered thresholds
{
  "V1_minus_V0_below_8_points": "the key-versus-value finding is overstated",
  "V3_minus_V2_above_15_points": "bare 'chromatin' is doing the work; report V2 only",
  "V5_below_V0_by_over_5_points": "stratum A is padded; the corrected headline must come down",
  "V6_below_15_percent": "the strict reading is unmet corpus-wide; this beat's verdict flips",
  "all_variants_within_a_few_points": "the definitional choices do not matter and 39.2% is simply right"
}
measurements — the numbers behind the chart
[
  {
    "quantity": "spread between the two definitions the existing reporter already prints",
    "value": 15.5,
    "units": "percentage points",
    "n": 541,
    "subject": "epi_field 39.2% against epi_text 54.7% on the same population",
    "universe": "541 gene/protein entries at commit ac2aeab, 2026-09-24",
    "null": null,
    "note": "the minimum known definitional sensitivity, before any variant proposed here is added"
  },
  {
    "quantity": "share",
    "subject": "epigenetics coverage, V0 status quo (key names only)",
    "universe": "593 gene/protein entries at commit 671ef21",
    "value": 0.368
  },
  {
    "quantity": "share",
    "subject": "epigenetics coverage, V3 generous (bare 'chromatin' anywhere)",
    "universe": "593 gene/protein entries at commit 671ef21",
    "value": 0.788
  },
  {
    "quantity": "share",
    "subject": "epigenetics coverage, V6 strict (mark AND locus/cell state)",
    "universe": "593 gene/protein entries at commit 671ef21",
    "value": 0.238
  },
  {
    "quantity": "percentage_points",
    "subject": "spread across all eight definitions",
    "universe": "593 gene/protein entries at commit 671ef21",
    "value": 55
  }
]
results — the numbers behind the chart
{
  "V0": 36.8,
  "V1": 49.2,
  "V2": 53.8,
  "V3": 78.8,
  "V4": 53.8,
  "V5": 36.6,
  "V6": 23.8,
  "Vt": 53.1
}
deltas — the numbers behind the chart
{
  "V1_minus_V0": 12.4,
  "V3_minus_V2": 25,
  "V0_minus_V5": 0.2,
  "spread": 55
}
Still open
  1. Run it. This is the cheapest open item in the beat - one script, under a minute, no external fetch - and until it is run the corrected 88.4% rests on three hand-read samples of 20, 25 and 30.
  2. Is there a ninth variant a reviewer would insist on? The list was written by the beat with a stake in the outcome.
  3. Should the same sweep be run on the localization and cell type/state lines at the same time? Both are quoted in the ledger and neither has ever been tested for definitional sensitivity.
Every source behind this entry (1)
  1. E1strong confidence 4 of 5: Replicated in peer-reviewed work by more than one group.dataset

    This beat's corrected epigenetics figure depends on definitional choices each worth tens of points: the status quo key-name test returns 39.2%, the same script's whole-entry mark test returns 54.7%, crediting entries that name a chromatin concept the mark regex lacks would add up to 121 entries (22.4 points), and counting declared-inapplicable entries separately would move a further ~108 - so no single corrected number should be quoted without the variants beside it.

    What this evidence cannot show

    The variant definitions are mine and the list is not exhaustive; a reviewer may reasonably propose a ninth. The point estimates quoted as the spread (121 entries, ~108 entries) come from this beat's own measurements and inherit their caveats, in particular the wide Wilson intervals on the three hand-read samples.

    Evidence that argues against this (2)
    • Proposing a sweep can be a way of avoiding a verdict. The dispatch asked whether the 39.2% should be believed, corrected or retired, and 'run eight variants' is not an answer to that question - the parent entry does answer it (corrected), and this analysis should not be read as softening that. If the sweep is never run, the corrected figure stands on three small hand-read samples and nothing else.
    • Variants V1-V4 all raise the number and were specified by the beat whose finding is that the number is too low. V5 and V6 are included as the downward variants, but they were added after the upward ones and only one of them (V6) tests the reading that would refute the beat outright. A sweep designed by the party with a stake in the outcome is not a neutral instrument, and the pre-registered thresholds above are a partial mitigation, not a cure.
Connected to