Cycle 77 published epigenetics as this graph's weakest PI dimension at 35.9% by dedicated field. Reading the entries that have no field shows 10 of 10 carry genuine, specific, cited epigenetic annotation in prose - so the dimension is 56.2% (at least 50.4% on a Wilson bound) and about 20 points of the 'gap' was a formatting artefact
also called the epigenetics dimension is not 36% · does the epigenetics field measure annotation or format · the weakest dimension that was not
Last cycle I reported that the knowledge graph's weakest area was epigenetics - the chemical marks on DNA packaging - because only about a third of gene records had a dedicated field filled in for it, which looked bad in a disease defined by exactly such a mark. So I pulled out the actual sentences from records that have no such field but mention a mark somewhere in their text, and read ten of them at random: all ten turn out to state real, specific, referenced epigenetic biology about that very gene, not passing mentions of the disease. The information was already there and simply not filed in the expected place, so the true coverage is about 56% rather than 36%, roughly 20 points of what I called a research gap was a paperwork gap, and the genuine gap is the 44% of records that say nothing about marks at all.
The same thing, for a scientist
**Statement.** `check-pi-dimensions.py` reports PI dimension 3 (epigenetics) three ways and the cycle-77 coverage head published the first as the headline: **a dedicated field on 175/495 = 35.4%**, a mark named in the body on ~56%, either on ~63%. I published 35.9% (the figure at that cycle's population) as "the weakest dimension ... in a disease defined by a histone mark". **That framing was wrong, and this analysis is the test that shows it.** The question a percentage cannot answer is whether the field-less entries are *unannotated* or *annotated elsewhere*. This corpus is entirely about a disease defined by H3K79me2, so "H3K79me2" appears in boilerplate everywhere - the mention count could easily have been noise. **Method: extract the sentences, then read them.** 495 entries in the PI population (`type == "gene" OR id startswith "gene-"`); 175 carry a dedicated field; **126** carry no field but matched a mark. **23 of those 126 (18.3%) were my own false positives** - see below - leaving **103 with a mark in readable prose**, across 391 matched sentences. A lexical `looks_about_this_gene` heuristic split those sentences almost exactly 50/50 (161 vs 162), which is to say it decided nothing, exactly as expected. So twelve entries were drawn at seed 20260923 and ten with readable sentences were **read by hand**. **10 of 10 carry genuine, specific, cited epigenetic annotation about the entry's own gene.** Not one is boilerplate: | entry | the prose | verdict | |---|---|---| | `gene-kdm6b` | "the H3K27me3 demethylase paralogous to KDM6A/UTX" | the mark IS its identity | | `gene-trim28` | "recruiting the enzyme that writes the silencing mark H3K9me3" | its own function | | `gene-dpy30` | "shared by all six of the cell's H3K4 methyltransferase complexes" | its own function | | `gene-kat5` | "requirement ... through DNA damage and global H4K16ac" | TIP60 writes H4K16ac | | `gene-rbbp5` | WRAD membership and where "the H3K4" activity sits | its own complex | | `gene-cdc73` | "PAF1 complex interactions with SETDB1 mediate promoter H3K9 methylation ... of HOXA9 and MEIS1" | its own complex, named loci | | `gene-ciita` | "MLL/COMPASS ... required for H3K4me3 there, with H3K27me3 moving inversely" | marks at this gene's promoters | | `gene-ep400` | "H4K12ac enrichment on specific genes in tumours ... co-localisation with TIP60" | its own complex, human tissue | | `gene-rprm` | "switched off by DNA methylation in nearly half of children with acute myeloid leukaemia" | this gene is the silenced one | | `gene-prom1` | "the cleanest surface read-out of" the H3K79 layer | weakest of the ten, still specific | **Wilson 95% CI on 10/10 is 72.2%-100%.** So at least 74 of the 103 prose-only entries are genuinely annotated, and the dimension is: | | n | % of 495 | |---|---:|---:| | dedicated field | 175 | **35.4%** (what I published) | | genuine prose only | 103 | 20.8% | | **field OR genuine prose** | **278** | **56.2%**, and **>= 50.4%** on the Wilson lower bound | | **neither - the real gap** | **217** | **43.8%** | **Consequence: do not dispatch a research beat to "populate the epigenetics field".** For roughly 103 entries that is a reformatting task, not research, and it would consume an agent to move text between fields. **The research gap is the 217 entries that say nothing about a mark at all**, and that is the population a beat should be aimed at. Reporting the dimension as 35.4% pointed a future cycle at the wrong 20%.
My own instrument matched gene names as if they were marks
23 of the 126 field-less entries I counted had ZERO readable sentences containing a mark. My detector matched marks in the full JSON blob - which includes ids, data keys and aliases - while the sentence extractor read only summary_lay, summary_expert, section bodies, evidence claims and caveats.
Look at which entries they are: gene-h2ax, gene-h2az1, gene-hdac3, gene-ubn1, gene-picalm, gene-cdk6. For the first three the regex matched the gene's own symbol - H2AX, H2AZ1, HDAC3 all contain histone or deacetylase tokens - and scored a gene named after chromatin machinery as a gene annotated with a chromatin mark.
That is the same error this project has now recorded seven times: selecting a lexical shape and describing it as a property. Committed here in the analysis written to test whether someone else's metric had that flaw. The 18.3% over-count is corrected in every figure above, and the raw 126 is retained in results.json so the correction is checkable.
Why a count could never have answered this and a read could
This is the cleanest case this project has had for the rule that a control total must be opened.
The count said 56% mention a mark. That is compatible with two opposite worlds: a corpus whose prose is richly annotated and whose fields are unpopulated, or a corpus where a disease-defining mark appears in everyone's boilerplate. The percentages are identical in both.
A lexical heuristic could not separate them either - my looks_about_this_gene flag split 161/162, which is a coin toss and correctly reported as deciding nothing.
Reading ten sentences separated them completely, 10/10. The cost was one command and about five minutes. The three previous instances where this project quoted a control total without opening it each cost a cycle, and one of them - the 56 records that proved a query worked, never read, one of which was the answer - cost the answer itself.
| pi population at run | 495 |
|---|---|
| population is moving | two agents (q119, q120) were writing during this run; 490 -> 495 observed within the cycle |
| has dedicated epigenetics field | 175 |
| PCT dedicated field | 35.4 |
| fieldless with a blob match | 126 |
| of those zero readable sentences | 23 |
| my own false positive rate PCT | 18.3 |
| false positives were mostly | genes whose OWN SYMBOL contains a chromatin token - gene-h2ax, gene-h2az1, gene-hdac3 - so the regex scored a gene NAMED AFTER chromatin machinery as a gene ANNOTATED WITH a mark |
| fieldless with genuine prose | 103 |
| matched sentences in that bucket | 391 |
| lexical heuristic split | 161 'about' vs 162 'passing' - a coin toss, correctly reported as deciding nothing |
| hand read n | 10 |
| hand read genuine | 10 |
| field or genuine prose | 278 |
| PCT field or genuine prose | 56.2 |
| PCT lower bound wilson | 50.4 |
| neither the real gap | 217 |
| PCT real gap | 43.8 |
| what i published last cycle | 35.9% by dedicated field, described as 'the weakest dimension ... in a disease defined by a histone mark' |
| by how much that understated | about 15 to 21 percentage points, depending on whether the point estimate or the Wilson lower bound is used |
| decision this changes | DO NOT dispatch a research beat to populate the epigenetics field. For ~103 entries that is reformatting, not research. Aim a beat at the 217 entries that say nothing about a mark at all. |
| sample seed | 20260923 |
| hand sample seed | 4242 |
| absence class | measured-not-curated |
| absence class note | The epigenetic annotation for ~103 entries EXISTS in this repository, in readable prose, with citations, and was never curated into the field the metric reads. That is measured-not-curated in the strictest possible sense: the measurement is not merely public, it is already written down in the same file the metric inspects. Not never-measured, not literature-absence-bounded, and specifically NOT a research gap - which is the entire point of this entry. |
wilson 95 ci PCT
[ 72.2, 100 ]
- The 217 'neither' entries are the real gap and nothing here characterises them. Are they genes for which no epigenetic literature exists, or genes nobody has looked up? That distinction decides whether a beat aimed there would return anything.
- Should the field be retired in favour of a prose-extraction check, or should a cheap non-research pass lift the mark from prose into the field for the ~103? The first is honest and unqueryable; the second is queryable and is data entry.
- gene-prom1 was the one borderline call in the hand sample. A pre-written rubric for 'genuine annotation', applied by a reader who has not seen the headline, would settle it and would make the next re-measurement of this kind trustworthy in a way this one is not.
- E1strong confidence 4 of 5: Replicated in peer-reviewed work by more than one group.analysis
Of 495 entries in the PI population, 175 carry a dedicated epigenetics field and 103 carry no such field but do carry a histone-mark or DNA-methylation statement in readable prose. A hand read of 10 randomly drawn entries from that 103 found 10 of 10 stating genuine, specific, cited epigenetic biology about the entry's own gene rather than boilerplate. Wilson 95% CI on 10/10 is 72.2-100%, so the field-or-genuine-prose coverage is 278/495 = 56.2% with a lower bound of 50.4%, against the 35.4% the dedicated field alone reports.
analyses/epigenetics-field-versus-prose/run.py and results.json, this repository; run 2026-09-23, sample seed 20260923 · Oncofusion knowledge graph, coordinator · internal analysis, reproducible from the repository 2026What this evidence cannot show
CONFIDENCE IS strong, NOT established, and the reason is the sample size: n=10 read by hand. 10 of 10 is a clean result but the Wilson lower bound is 72.2%, so up to 29 of the 103 prose-only entries could still be boilerplate and the point estimate of 56.2% could be as low as 50.4%. Second limit: I drew the sample and I read it, with no second reader and no pre-registered rubric for 'genuine annotation' - the ten calls were judgement, and the sentences are in results.json so anyone can disagree with each one. Third: the PI population MOVED during this analysis (490 -> 495) because two agents were writing, so every denominator here is a timestamp. Fourth: my mark regex is my own, not the checker's _EPI_MARK, so these bucket sizes are not directly comparable to check-pi-dimensions.py's 56.1% figure even though they land close.
Evidence that argues against this (3)
- The strongest objection is that 'annotated in prose' and 'annotated in a field' are not interchangeable for the purpose the field exists. A dedicated field is machine-readable, queryable and comparable across entries; a sentence is none of those. On that reading 35.4% is the right number for what the field is FOR, and this analysis has shown only that the underlying knowledge exists - which is a different claim. I think the reframing still holds for the decision it affects (do not send an agent to do research where the answer is already written), but it does NOT license replacing 35.4% with 56.2% in a context where machine-readability is the point.
- gene-prom1 is the weakest of the ten and I counted it as genuine. Its sentence says PROM1 is 'the cleanest surface read-out' of the H3K79 layer - which is a statement about PROM1's relationship to a mark, not about a mark on PROM1's own chromatin. A stricter reader would score it as passing, making the sample 9 of 10 and the Wilson lower bound 60.6% rather than 72.2%. I have left it as counted and flagged it here rather than quietly excluding it.
- This analysis deflates a figure I published one cycle earlier, and a re-measurement run by the person who published the original is the weakest instrument for retiring it. The specific risk is motivated reading of the ten sentences: knowing I had called the dimension 'the weakest' creates an incentive to find the gap illusory. The mitigation available and used is that the sentences are stored verbatim in results.json for independent scoring; the mitigation NOT used is a second reader or a rubric written before reading.
that entry published epigenetics at 35.9% as the weakest PI dimension; reading the field-less bucket shows 10 of 10 genuinely annotated, so the dimension is 56.2% and ~20 points of the gap was formatting
seventh instance, and this time in my own detector: the regex matched gene SYMBOLS containing chromatin tokens (H2AX, H2AZ1, HDAC3) and scored a gene named after chromatin machinery as one annotated with a mark - an 18.3% false-positive rate
the count said 56% mention a mark, which was equally consistent with rich prose annotation and with disease boilerplate; a lexical heuristic split 161/162 and decided nothing; reading ten sentences separated them 10/10 in five minutes
one of the ten hand-read cases: its DNA-methylation silencing in nearly half of childhood AML is stated with a citation in prose and absent from the epigenetics field the metric reads
- related to →KDM6B (JMJD3) - UTX's paralogue, which this graph has argued about for cycles without writing
hand-read case where the mark IS the gene's identity - 'the H3K27me3 demethylase' - and the dedicated field is still empty