Repairing 85 defective citation blocks, and the finding that the queue's own numbers were wrong in three directions at once
also called Q42 citation-integrity repair · truncated title repair · counter-note citation repair
Sixty-seven counter-argument citations were reported as having titles cut short. We re-fetched every one from PubMed and found the report was wrong about most of them: 28 differed only by a full stop, four had the correct title flagged as the wrong one, and a graph-wide sweep found 76 real truncations rather than 67. All of them are now fixed against titles fetched this session.
The same thing, for a scientist
`check-counter-note-support.py` opened this beat with four numbers: 67 truncated counter-note titles, 15 counter-notes with no citation object, 3 bare-string counter-notes, and 25 notes scoring low on abstract overlap while carrying specific factual tokens the cited abstract lacks. Every one of the 67 was re-fetched from PubMed `efetch` (with `itertext()`, per the empty-`ArticleTitle` rule) rather than repaired from a sibling entry. **The queue's headline number was wrong in three directions simultaneously, and all three follow from one design choice: the checker compares a counter-note's stored title to the PARENT ITEM'S stored title, never to PubMed.** (1) 28 of the 67 differed only by a trailing full stop - not truncations at all. (2) In 4 cases the checker's `correct = the longer string` heuristic pointed at the wrong string: the longer one was the real title with a section annotation such as `(Discussion, summarising cited primary work)` written into the `title` field, so the flagged 'truncated' string was the correct title. (3) A graph-wide sweep of all **9,394 stored PMID citations across 1,974 distinct PMIDs** against esummary found **76** stored titles that are strict prefixes of the real title, not 67 - the checker is structurally blind to a truncation whose PMID appears only once in an entry, because it needs a same-PMID pair to fire. Repairs: 76 truncated titles replaced, 6 titles carrying words PubMed does not have corrected, 5 section annotations moved out of `title` into a new `locator` field, and 162 further blocks normalised to the exact fetched string so that no same-PMID pair disagrees. Structural counts went **67 -> 0 truncated, 3 -> 0 bare strings, 15 -> 12 uncited** (the 12 are bounded absences with nothing to cite, and each now says so in its own text). `verify-citations.py --strict` was clean before (1,974 PMIDs, 0/0/0) and clean after (1,984 PMIDs, 0 title, 0 DOI, 0 author mismatches). On the 25 suspect notes the yield was **4 of 25 (16%)**, as the checker's own entry predicted it would be low.
What 76 truncated titles say about how they got there
This is the part worth more than the fixes. 76 truncations are not 76 accidents, and the pattern in the data names the process.
They cluster by PMID, not by entry. The 76 defects come from only 48 distinct PMIDs. PMID 17590169 is truncated at the same 82-character point in four different entries; 25594862 at the same 70 characters in four; 40536420 at 121 characters in seven; 41533567 at 71 in four; 39121437 at 90 in six. A title cut at exactly the same character in seven entries was not typed seven times. It was fetched once, stored short, and copied. The cut points are not random either - they sit at 70, 80, 82, 86, 88, 90, 95, 100 and 121 characters, which is the shape of display truncation, not of typing.
The copy travels with the prose. The brief's rule is 'reuse the prose from a sibling entry if you like; re-fetch the ids.' The evidence here is that in practice the citation block travels with the prose as one unit, because it sits inside the block being copied. Every one of the multi-entry clusters is a case where a whole counter-evidence note was reused verbatim - the four WRAD entries (gene-ash2l, gene-dpy30, gene-rbbp5, gene-wdr5) carry a 1,100-character note that is byte-identical across all four. The rule as written asks an author to disassemble a block they are copying wholesale. That is the wrong unit of discipline.
Nothing could see it. verify-citations.py uses idf-weighted overlap between the stored and real title, and a correct first 80 characters clears the threshold easily - it reported 0 mismatches over all 76. check-counter-note-support.py could see only the subset where the same PMID appears twice in one evidence item. A checker that compares the stored title to the FETCHED title with an exact-prefix test finds all 76 in one pass over cached esummary output, costs nothing extra, and is the single change that would have prevented this beat.
Before and after, measured
| measure | before | after |
|---|---|---|
check-counter-note-support.py truncated_titles | 67 | 0 |
| bare_string_notes | 3 | 0 |
| notes_without_citation | 15 | 12 |
suspect_imported_facts (n_suspect) | 25 | 27 |
| graph-wide: stored title is a strict prefix of the real title | 76 | 0 |
| graph-wide: stored title carries words PubMed does not have | 11 | 0 |
verify-citations.py --strict title / DOI / author mismatches | 0 / 0 / 0 | 0 / 0 / 0 |
validate-graph.mjs errors attributable to this beat | 0 | 0 |
n_suspect went UP by two and that is the instrument, not a regression. The four corrective notes written in this beat, and this entry's own counter-notes, quote PMC ids, percentages and gene symbols that are in the papers' bodies and not in their abstracts, so they score exactly like the defect they document. A note that names its source precisely is penalised by a scorer built on abstract overlap.
The 12 remaining uncited notes are the right answer, not a remainder. Ten are bounded absences - 'searched, found nothing, here are the queries and the date' - and two are falsifier lists resting on the UniProt record the parent item already cites. Each of the ten now closes with an explicit sentence saying no citation is attached because there is nothing to cite, because an uncited note and an unciteable note are indistinguishable on the page. Three of the original 15 did have a citable source and got one: fusion-nup98-kdm5a E3 and fusion-nup98-nsd1 E3 asserted that the field has challenged transcriptional-condensate claims as overexpression artefacts, which is exactly PMID 29930090 (LCD interactions at physiological expression, no detectable phase separation) and PMID 36526633 (1,6-hexanediol and classical FRAP cannot separate LLPS from clustered binding); localization-nuclear-speckles-kmt2a-r E1's note is a reading of its own parent paper and now says so with that paper attached.
The four real defects in the 25 suspect notes, and the 21 that were fine
The checker's own entry warned the yield would be low and that several flagged tokens would be recombinome percentages that do come from the cited paper's tables. That is what happened. 21 of 25 are sound. Fifteen are scope or logic arguments carrying no imported fact - base-rate arguments, ascertainment arguments, analogy-limit arguments - and six quote numbers verified in this session against the cited paper's full text. Two more (cell-type-fetal-liver-hsc E1, mechanism-kmt2a-subnuclear-localization E5) already carried sourcing corrections written by the Q40 sweep and needed nothing.
Four were real, and one of them was worse than a mis-citation:
target-fusion-junction-epitopeE1 - a wrong gene symbol, not just a wrong citation. The note said the minor breakpoint cluster region is 'dominated by USP2, AFDN and SEPTIN6'. PMC10169636, read 2026-09-20: 'A total of 47 breakpoints were found in the minor BCR of KMT2A. The most frequent partner genes are USP2 (n = 29), AFDN (n = 9), and USP8 (n = 3).' The third partner is USP8. SEPTIN6 is a major-BCR partner (n = 19) and appears nowhere in the minor BCR. Corrected in place, and the recombinome added as a separate note because none of these facts is in Milne et al. 2010, the paper the note cited.breakpoint-kmt2a-partner-exon-preferenceE1 - arithmetic. The note's per-base-pair depletion was given as 2.9-fold. From the paper's own figures (A = 1,761 bp / 37.2%; B = 679 bp / 19.8%; C = 5,026 bp / 39.5%, all quoted verbatim from PMC10169636) it is 2.7-fold against region A alone and 3.0-fold against A+B. Direction and argument unchanged; the number is now right and both comparators are stated.epi-kmt2a-rearranged-acute-leukemia-all-agesE4 - the KMT2A::SEPTIN11 cytogenetic-collision fact is from the recombinome, not from the 2013 review whose PMID it wore. Recombinome partner table: SEPTIN11 at t(4;11)(q21.1;q23.3), AFF1 at t(4;11)(q21.3-q22.1;q23.3) - both read t(4;11)(q21;q23) at clinical banding resolution.fusion-kmt2a-mllt3E1 - a figure that cannot be sourced. 'KMT2A-rearranged disease accounts for about 10% of acute leukaemias of ambiguous lineage' is not in the recombinome, not in the iBFM-AMBI2012 report (PMID 29720486, abstract re-read this session), and a PubMed search did not resolve it. Marked SOURCING NOT FOUND rather than deleted, and the direction the paper DOES measure is added beside it: 61 of 3,401 KMT2A-rearranged patients were MPAL, 35 of them infants.
No original note was deleted in any of the four.
PubMed is not always the better copy: one counter-example, verified
The standing rule is to take the title from the fetched record. The graph-wide sweep produced one case where following it would have introduced a defect.
PMID 32285100's ArticleTitle from efetch ends ...preimplantation lethality in mice\u2020. - a U+2020 DAGGER footnote marker sitting inside the title, before the full stop. Three citations in gene-rbbp4 and gene-rbbp7 store the title without it, which is the correct human title. The repair was applied, inspected, and reverted. Byte-identity with PubMed is the goal for identifiers; for titles it is the goal only up to publisher footnote junk, and a repair script that does not look at what it is about to write will happily propagate a dagger into three entries.
The tenth identifier-from-recall incident, caught inside this beat
Recorded because a repair beat is exactly where this must not happen, and it did.
While drafting the counter-example above, this entry's citation block for PMID 32285100 was assembled from the surrounding prose rather than from the record that had just been fetched, and the author list came out as Rodriguez D, Braden C, Luo SW, Lakshmipathy U. The real authors are Miao X, Sun T, Barletta H, Mager J, Cui W (Biol Reprod 2020, 10.1093/biolre/ioaa046). Title, journal, year, DOI and PMID were all correct; only the author list was invented, which is the shape that passes every check except the author comparison.
It was caught by re-fetching before hand-back, and verify-citations.py --strict would have caught it on the post-write run. Both defences held. The reason it is written down rather than quietly fixed is that the motion that produced it is identical to the one the brief names: the record had been fetched minutes earlier and one field was typed from memory instead of copied out of it. The previous incident of this exact kind was also committed by a beat whose subject was citation hygiene. Twice is a pattern, and the pattern is that writing about the rule does not substitute for applying it.
Corrections owed outside the queue
- The
--limit 260in the standing invocation samples 40% of the population.check-counter-note-support.pyreportssame-PMID counter-notes to score: 650and then scores the first 260 in file-path order. Every number in the report - includingn_suspectand the ranked queue - describes an alphabetically biased 40% sample, and the report does not say so. Entries underdata/graph/nodes/t*and later are never reached. A future run should use--limit 700or none. find-contradictions.pyA-class, 1 hit, pre-existing:breakpoint-kmt2a-partner-exon-preferencestill asserts 'deviates from the mean' in its body while its own counter-note argues that comparator is circular. This beat does not change claims, so it is reported rather than edited. It is a methodological dispute and arguably legitimate, but the body should name the comparator explicitly.- Six titles in the graph carried words PubMed does not have, which is the mirror of truncation and equally invisible: PMID 25305204 stored as
...MLL leukemia and HIV-1in four entries (the publisher-deposited XML, viaefetch db=pmcon PMC4263982, gives...and HIV), and PMID 37740239 stored as...acute lymphoblastic leukemia cellsin two (PMC10517487 body XML gives...leukemia). Both were corrected. Note the route: EPMCfullTextXMLreturned HTTP 500 on PMC4263982 andefetch db=pmcrecovered it with no<body>but a usable<article-title>- route 3 of the five-route test doing exactly what it exists for. ir.kuraoncology.comreturns HTTP 403 to every automated fetch tried (urllib, curl with a browser UA, WebFetch timeout at 60 s). The press release cited inreg-orphan-drug-designationE8 could not be verified this session. FDA's own orphan-designation search (OOPD_Results.cfm) was re-tried by HTTP POST and again returned a redirect with no rows, confirming the note already in that entry.- A repository URL in the graph does not resolve. Eight entries cite
https://github.com/xX-its-amit-Xx/oncofusion-knowledge-graph/...for this project's own scripts and reports. The configured git remote isgit@github.com:xX-its-amit-Xx/oncofusion-knowledge-graph.git, and other entries use that form. Both spellings are in the graph; one of them is wrong and it is not the one that matches the remote. Not edited here - those entries belong to other beats - but it is the same defect class as a wrong DOI beside a right PMID: internally plausible, never dereferenced.
What to change so this does not recur
- Add an exact-prefix title test to
verify-citations.py. It already fetches every real title.stored != real and real.startswith(stored)is one line and finds all 76 of these; idf overlap finds none of them. Report it separately from a mismatch, because it is a different defect with a different cause. - Fix
check-counter-note-support.py's truncation detector to compare against PubMed, not against the sibling title. As written it cannot distinguish a truncation from a full stop, it mislabels the correct string as the defect whenever an annotation was written into the title, and it misses every truncation that does not happen to appear twice in one evidence item. Three failure modes, one cause. - Give the citation schema a
locatorfield and stop writing(Discussion)intotitle. Five blocks did it here; the information is worth keeping and the title field is the wrong place for it. - Widen
CAPS_NOISE.Q40,Q42,PMID,PMC,ZERO,WHERE,ALREADY,FOUND,RETAINandDEPLETEDare this project's own emphasis and beat-naming conventions and they account for a large share of theunsupported_specificstokens in the suspect queue. Every one of them makes a correctly-sourced note look like an imported fact.
| script | scripts/check-counter-note-support.py |
|---|---|
| status | run |
| result summary | 67 flagged truncated counter-note titles resolved to 0; a graph-wide sweep of 9,394 stored PMID citations found the true count was 76 and all are repaired. 3 bare-string notes converted to objects with fetched citations. 15 uncited notes resolved to 3 cited and 12 explicitly labelled unciteable. 4 of 25 suspect notes (16%) were real imports and were repaired without deleting the originals, one of which was an outright wrong gene symbol (SEPTIN6 for USP8). verify-citations.py --strict clean before and after. |
| citation objects rewritten | 249 |
| entries touched | 151 |
inputs
[ "data/graph/nodes/*/*.json", "docs/counter-note-support-report.json", "NCBI esummary/efetch db=pubmed", "Europe PMC PMC10169636 fullTextXML", "efetch db=pmc PMC4263982, PMC10517487" ]
before — the numbers behind the chart
{
"truncated_titles_reported": 67,
"truncated_titles_graph_wide": 76,
"titles_with_extra_text": 11,
"bare_string_notes": 3,
"notes_without_citation": 15,
"suspect_imported_facts": 25
}after
{
"truncated_titles_reported": 0,
"truncated_titles_graph_wide": 0,
"titles_with_extra_text": 0,
"bare_string_notes": 0,
"notes_without_citation": 12,
"suspect_imported_facts": 27,
"verify_citations_strict": "1984 PMIDs, 0 title / 0 DOI / 0 author mismatches"
}- Normalising every stored title to PubMed's exact string makes the graph byte-identical to a database that itself carries publisher artefacts - the U+2020 dagger in PMID 32285100 is the worked example. A future automated normaliser run without inspection will import that junk at scale.
- Labelling twelve notes 'no citation because there is nothing to cite' makes an absence look adjudicated. If any of those literatures has filled in since the original search, the label now actively discourages the re-check that would find it.
- Adding corrective notes that name PMC ids and exact percentages makes the graph's own quality instrument report a worse number, which creates a quiet incentive to write vaguer corrections.
- Would an exact-prefix test against the fetched title, added to verify-citations.py, find truncations in the 215 'neither' citations that the prefix test cannot currently classify - and how many of those 215 are descriptive labels that should be labelled as such in a field rather than smuggled into `title`?
- The 76 truncations cluster into 48 PMIDs, several appearing in four to seven entries. Is there a recoverable record of WHICH tool produced the 90-character listing they were copied from, and does that tool still run in any current beat?
- check-counter-note-support.py scores only 260 of 650 same-PMID counter-notes in the standing invocation. What does the unsampled 60% contain, and does the 16% real-defect yield hold there?
- Counter-notes are copied verbatim across sibling entries - the WRAD note is byte-identical in four. Should the graph store shared notes by reference so that one correction reaches every copy, instead of relying on an author remembering to grep?
- E1established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.database
Across all 9,394 stored PMID citations in the graph (1,974 distinct PMIDs), 76 stored citation titles are a strict prefix of the title PubMed returns for the same PMID, and 11 carry the real title plus extra text; the counter-note checker reported 67 because it can only see a truncation when the same PMID appears in both an evidence item and one of its counter-notes.
NCBI Entrez esummary and efetch (db=pubmed), full-graph title sweep run 2026-09-20 · National Center for Biotechnology Information, US National Library of Medicine · NCBI E-utilities 2026What this evidence cannot show
Counts are of citation OBJECTS, not distinct defects: one truncated title copied into seven entries counts seven times, which is the point being made but inflates a naive 'number of errors' reading. The 215 'neither' cases were left untouched and include legitimate descriptive labels for database and registry sources; some of them may also hide defects that this prefix test cannot see. Comparison used a Unicode-normalised, trailing-punctuation-stripped form, so trailing-full-stop differences are counted as exact rather than as truncations.
Evidence that argues against this (1)
- The fetched record is not automatically the better copy. PMID 32285100's ArticleTitle from efetch ends 'in mice\u2020.' - a dagger footnote marker inside the title. Three citations in gene-rbbp4 and gene-rbbp7 store it without the dagger, which is correct, and the automated repair to PubMed's exact string was applied and then reverted after inspection. A title-repair rule that writes whatever efetch returns will propagate publisher footnote symbols into the graph. Miao X et al. 2020
- E2established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.dataset
The counter-note checker's truncation detector compares a counter-note's stored title to its PARENT evidence item's stored title rather than to PubMed, so it cannot distinguish a real truncation from a trailing full stop (28 of its 67 hits), and it labels the shorter string the defect even when the longer one is the real title plus an annotation written into the title field (4 of its 67 hits).
scripts/check-counter-note-support.py, structural_defects.truncated_titles detector · Oncofusion Knowledge Graph, Q40 counter-evidence quality sweep · This repository 2026What this evidence cannot show
The detector is not wrong about the class it was built for - a counter-note inheriting a truncated title from its parent is exactly what it finds, and it found 35 genuine instances of that. The criticism is of the reference string, not of the idea. Read from disk, not from the script's docstring.
Evidence that argues against this (1)
- The same-PMID pairing that limits the detector is also what makes it cheap: it needs no network call, while the corrected test needs a fetched title for every PMID in the graph. That is only free because verify-citations.py already fetches all 1,984 of them, so the fix belongs in that script rather than in this one. Oncofusion Knowledge Graph 2026
- E3established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.paper
The minor breakpoint cluster region of KMT2A contains 47 of 3,401 genomically characterised rearrangements (1.4%) and its most frequent partners are USP2 (n=29), AFDN (n=9) and USP8 (n=3); SEPTIN6 is a major-BCR partner (n=19) and does not appear in the minor BCR, so the counter-note in target-fusion-junction-epitope naming SEPTIN6 as a minor-BCR partner was wrong.
The KMT2A recombinome of acute leukemias in 2023. · Meyer C, Larghero P, Almeida Lopes B, Burmeister T, Groger D, Sutton R, et al., Marschalek R · Leukemia 2023What this evidence cannot show
Read from the Europe PMC fullTextXML of PMC10169636 on 2026-09-20, tags stripped before entities were unescaped. The domain-retention claim attached to the same counter-note - that minor-BCR fusions retain PHD1-3, the bromodomain and ePHD4 - is a structural inference from the intron 20 to exon 24 breakpoint window and is not asserted by this paper; it is left in the entry, flagged as an inference.
Evidence that argues against this (1)
- The partner breakdown of the 47 minor-BCR cases is given in the Results text, but the per-partner breakpoint distribution the graph's atlas entries draw on sits in Supplementary Table S2, which was not opened in this beat. A figure quoted from S2 elsewhere in the graph has not been checked here, and the recombinome's own denominators shift between the full 3,401 cohort and the NGS-only subset (BCR1:BCR2 is 98:1.4 overall but 94:6 in the NGS data), so a percentage is only meaningful with its cohort named. Meyer C et al. 2023
- E4strong confidence 4 of 5: Replicated in peer-reviewed work by more than one group.dataset
Of the 25 counter-notes flagged as possible imported facts, 21 are sound - scope arguments carrying no factual import, or facts verified this session in the cited paper's own body - and 4 required repair, a yield of 16%.
docs/counter-note-support-report.json, suspect_imported_facts, adjudicated by reading 2026-09-20 · Oncofusion Knowledge Graph, Q42 citation-integrity repair · This repository 2026What this evidence cannot show
This is a judgement call on 25 notes by one reader in one session, not a measurement. 'Sound' here means the note's factual content is in the cited paper or the note is an argument rather than an assertion; it does not mean the argument is correct. Six of the 21 were accepted on numbers verified against PMC full text; the other fifteen were accepted on reading alone. And the 25 are drawn from the report's 40% alphabetical sample, so the 16% yield describes that sample, not the graph.
Evidence that argues against this (1)
- The four corrective notes written in this beat quote PMC ids, percentages and gene symbols that live in paper bodies rather than abstracts, so the next run of the same checker scores them exactly like the defect they document - n_suspect went from 25 to 26 after the repair. The scorer cannot distinguish 'names its source precisely' from 'imports a fact', which is the same blindness it already warns about in the other direction. Oncofusion Knowledge Graph 2026
- E5established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.paper
Twelve counter-notes legitimately carry no citation because they are bounded absences or falsifier lists with nothing to cite; three of the original fifteen did assert a sourceable fact and now carry one, including the condensate-artefact caution in the two NUP98 entries, which is supported by live-cell imaging showing that at physiological expression low-complexity-domain interactions occur without detectable phase separation.
Imaging dynamic and selective low-complexity domain interactions that control gene transcription. · Chong S, Dugast-Darzacq C, Liu Z, Dong P, Dailey GM, Cattoglio C, Heckert A, Banala S, Lavis L, Darzacq X, Tjian R · Science 2018What this evidence cannot show
Chong et al. study transcription-factor LCDs in a reporter and endogenous-locus imaging system, not NUP98 fusions, so it establishes that the artefact class is real and general rather than that any specific NUP98-fusion condensate result is wrong. The bounded-absence half of both NUP98 notes - no demonstration of NUP98::KDM5A condensates at endogenous levels in primary AMKL blasts - remains uncited because nothing was found to cite.
Evidence that argues against this (1)
- Labelling a note 'unciteable' is itself a claim that can be wrong, and it is not falsifiable from the note. Each of the ten bounded absences rests on searches run in an earlier cycle with queries recorded in the note, and this beat re-ran none of them; the label records that the earlier author looked, not that the literature is still empty. Two of the ten concern KMT2A cruciform binding and would be overturned by a single replication of PMID 7938000. Zeleznik-Le NJ et al. 1994
- E6strong confidence 4 of 5: Replicated in peer-reviewed work by more than one group.database
The FDA-side orphan drug designation for ziftomenib has no public regulator-issued source - the Adis review of the approval attributes it to a company media release of 24 July 2019 - while the European designation is on the public record as EU/3/23/2881, granted 12 January 2024 for acute myeloid leukaemia.
EU/3/23/2881 - orphan designation for treatment of acute myeloid leukaemia (ziftomenib) · European Medicines Agency, Committee for Orphan Medicinal Products · EMA orphan designations register 2024What this evidence cannot show
An EMA designation is not an FDA designation and does not confirm one; it is cited to replace a bare unsourced string with a verifiable regulator record on the same fact pattern, not to settle the US question. FDA's OOPD search was re-tried by HTTP POST on 2026-09-20 and returned a redirect with no result rows, and ir.kuraoncology.com returned HTTP 403 to every automated route tried, so neither the agency record nor the company release could be read this session.
Evidence that argues against this (1)
- The Adis review is a secondary source and its reference list is what was read, not an agency document; reading a reference list establishes what that author could find, not what exists. FDA does publish orphan designations, and the failure here is that the interface blocks automated queries - an absence produced by tooling, which is the shape this project has twice mistaken for a finding. McGuigan A 2026
repairs the queue that sweep's checker produced; its '39 truncated titles' is revised to 76 graph-wide, and 28 of the 67 flagged pairs were trailing-full-stop differences rather than truncations
the minor-BCR partner named SEPTIN6 in that entry's counter-note is USP8 (PMID 37019990, Results, 'The minor BCR of KMT2A'); SEPTIN6 is a major-BCR partner and appears nowhere in the minor BCR
- related to →Each partner prefers a different KMT2A exon: partner-specific break position in 3,401 patients
per-base-pair depletion in that entry's counter-note corrected from 2.9-fold to 2.7-fold against region A and 3.0-fold against A+B, recomputed from the paper's own 1761/679/5026 bp and 37.2/19.8/39.5% figures
the KMT2A::SEPTIN11 cytogenetic-collision fact in that entry's counter-note is from the 2023 recombinome, not from the 2013 review whose PMID it carried; the correct source is now attached beside it
- related to →KMT2A::MLLT3 (MLL-AF9), t(9;11)(p21.3;q23.3)
'about 10% of acute leukaemias of ambiguous lineage' in that entry's counter-note could not be sourced and is now marked SOURCING NOT FOUND; what the cited paper does measure (61 of 3,401 KMT2A-r patients were MPAL, 35 of them infants) is added beside it
that entry's uncited condensate-artefact caution now carries PMID 29930090 and names PMID 36526633; the residual NUP98::KDM5A endogenous-level claim stays a bounded absence
- supports →NUP98::NSD1, t(5;11)(q35;p15.5)
same repair: the overexpression-concentration caveat is cited rather than asserted
bare-string counter-note converted to a cited object; the FDA-side designation has no public regulator source, so the EMA record EU/3/23/2881 (12 January 2024) is cited instead and the tooling failure is stated
bare-string counter-note converted to a cited object on the NDA 218944 approval letter; the 'secondary coverage calls it accelerated' half is marked SOURCING NOT FOUND after a 2026-09-20 search
bare-string counter-note converted to a cited object on Mease et al. 2024 (PMID 38403586), with the published correction PMID 38515155 named
route 3 of the five-route test (efetch db=pmc) recovered the publisher-deposited article-title for PMC4263982 after EPMC fullTextXML returned HTTP 500, settling two of the six over-long stored titles
counter-example to 'always copy the title from the fetched record': PubMed's ArticleTitle for PMID 32285100 carries a U+2020 dagger footnote marker that this entry's stored title correctly omits; the automated repair was reverted
- related to →ASH2L — the WRAD subunit that has DPY30's essentiality profile and none of its co-dependency signal
worked example of copy-propagation: a 1,100-character counter-note is byte-identical across gene-ash2l, gene-dpy30, gene-rbbp5 and gene-wdr5, and the truncated title inside it travelled with the prose
same blind spot from the other side: that checker scores evidence[].claim and never reads counter_evidence[].note, which is where all 76 truncations and all four imported facts lived
WHY verify-citations.py OMITS THE YEAR, and why that is right: a year check would produce 33 false positives, because the recorded value is often the electronic date and the index reports the issue year.
WHAT THE VERIFIER CANNOT SEE: a retracted paper keeps its PMID, DOI, title and authors, so every field verify-citations.py compares still matches.