← Mission Control Results

What we found, strongest first

Seven sections, ordered by what is most solid and least flattering rather than by what is most exciting. It opens with four things we got wrong and corrected, then a pre-registered test of our own central claim that failed, then the measurement of how far a whole-organism simulation actually is.

Every number on this page is read from a committed file when the page is built. Nothing is typed in by hand, so a figure here cannot drift from its source. Each result prints the path it came from. Where a source carries no value, the page says so instead of guessing.

node dashboard/build-results.mjs

Page built 2026-11-01T15:36:15.256Z. Source files as last built:

threadbuiltfile
design-validation2026-10-31T22:09:19.414Zdesign-validation/scorecard.json
simulation-readiness2026-10-31simulation-readiness/readiness.json
crosscheck-frontier2026-10-31T22:11:42.044975Zcrosscheck-frontier/crosscheck.json
nanopubs-index2026-10-31T22:12:39Znanopubs-index/index.json
lean eliminate (physiology)2026-11-01T04:43:43.510Zlean/eliminate/ledger.physiology.json
lean laws2026-10-31T22:58:17.754Zlean/laws.json
lean mutation testing2026-11-01T03:04:36.640Zlean/mutations.json
genotype map (vetted)2026-10-31T22:27:24Zgenotype/map.vetted.slim.json

No bird data appears anywhere on this page: class Aves is this project's frozen holdout, and the drafts covering it are indexed but deliberately not grounded.

1 of 7

What we corrected

Four claims this project had published were wrong or overstated, and all four were corrected on the same day. Three were caught by our own checks; one was caught by a collaborator's independent graph. None was quietly edited: each is a record that states what we said, what the source says, and what changed.

✕ RETRACTED

A proposed gja5a link to fin length

Found by: our own check (the cell-cell subagent)

An earlier note from this thread offered Daane 2021's `gja5a` convergent substitution as a second link between the flying-fish genomics and the bioelectric fin-size story. The cell-cell subagent checked it and the link does not hold: the fin-length connexin in zebrafish is `gja1b` (cx43, the `short fin` locus), `gja5a` has no ZFIN fin expression or phenotype record, and Daane 2021's own text puts cx43 under *constrained*, not accelerated, evolution along the flying-fish branch. The `gja5a` substitution stays in the map's `fin_size` block as the paper's own data, and it is kept out of any causal chain. The real connexin tie to the potassium-channel story is `gja1b` with Seaver 2025, which is independent of Daane.

records in the collaborator's graph that assert the link we retracted0

genotype/nanopubs/DECISIONS.md · crosscheck-frontier/crosscheck.json (row G4)

✕ CORRECTED

"Almost no molecular data exists for flying fish"

Found by: the project lead, reading a primary source the thread had not read

An annotated genome does exist: Xu et al. 2021 assembled 23,611 predicted protein-coding genes for Hirundichthys speculiger (mirrorwing flyingfish), of which 23,492 (99.5%) carry at least one database hit. What flying fish lack is expression and phenotype data, not genes.

And the caveat that keeps it honest: at least one sequence-similarity or domain hit in one of four databases, and nothing more. TrEMBL alone accounts for 23,477 of the hits, and TrEMBL is automatically generated and unreviewed, so 99.5% is a measure of database coverage rather than of understood function.

predicted protein-coding genes23,611
with at least one database hit23,492
of those, hits from TrEMBL alone (unreviewed, automatic)23,477
hits from SwissProt, the only manually reviewed set21,453
occurrences of "RNA-seq" or "transcriptome" in that paper, counted0
project files whose constraint wording was rewritten9

genotype/map.vetted.slim.json (flying_fish_genome) · genotype/nanopubs/unsigned/correction-flying-fish-genome-exists.trig

✕ WITHDRAWN, then narrowed

"No ray-to-inter-ray signalling arrow could be sourced in any fin of any fish"

Found by: our own nanopublication curation pass, not the thread that wrote it

Ray-to-inter-ray signalling is established in the zebrafish caudal fin by grafting and niche experiments. One query returned three papers that contradict the universal sentence. What survives is the far narrower claim that no fetched source names a ligand in one compartment and its receptor in the other.

And the caveat that keeps it honest: The cause is a process failure, not only a fact error: a title-only read was allowed to support a universal negative, and one of the three papers was already cited by the same thread.

papers that contradict the universal claim3
of those, papers that defeat the narrowed claim0
of those, papers this thread already held and had read title-only1
of those, studies in the pectoral fin (all three are caudal-fin work)0

genotype/nanopubs/unsigned/correction-ray-interray-null-narrowed.trig · nanopubs-index/README.md (finding 1)

✕ WITHDRAWN

"The TFF’s wings (aspect ratio 17.9) are more slender than any measured flying fish (3.0-16.9)"

Found by: our own parametric-model fix pass, reading Fish (1990) and Park & Choi (2010) in full

The two numbers used different definitions. 17.9 is span squared over the area of both pectoral fins (Park & Choi S^2/A1); Fish (1990) divides by pectoral plus pelvic fins plus the body between them. On Fish’s definition the TFF is at most 13.9, inside his range. What survives: 17.9 is 1.7 times the one measured specimen (10.68).

And the caveat that keeps it honest: The same pass found the adult flying-fish mass differs 2.2x between the one wind-tunnel specimen (0.060 kg) and the population length-weight fits (0.100-0.132 kg). The 9.9 m/s minimum flight speed holds only for the specimen; at population mass it is 12.7-14.6 m/s, still inside the quoted 10-20 m/s.

TFF aspect ratio, Park & Choi convention17.906
TFF aspect ratio, Fish 1990 convention (upper bound)13.902
measured specimen, Park & Choi convention10.68

anatomy-model/parametric/CHANGELOG.md · physics/flier/tff/SPEC-MISMATCHES.md (item 1) · physics/results.json (overall.sentence)

✕ CORRECTED

"Sustained aerobic powered flight is 29 to 38 times short; no teleost the measured record allows has an aerobic ceiling above 0.0458 W" (E3)

Found by: the studio engine, when a real zebrafish broke our own aerobic bound

Run on an unedited adult zebrafish, the studio flagged the fish red for swimming at speeds it was measured to sustain. The Fick ceiling (efficiency × oxycaloric × cardiac output × arterial O2) used a cardiac output borrowed from schoolmaster snapper, 58.48 ml/min/kg. A measured zebrafish at U_crit takes up 2630 mg O2/kg/h (Palstra et al. 2010, PLoS One 5:e14483, PMC3013094), 2.8 times the 950 the ceiling allowed; even its standard metabolic rate is 1.5 times over. The same proxies set the flying-fish numbers. With a zebrafish-derived O2 delivery (1600 mg/kg/h scaled to 60 g) and a skeletal-muscle efficiency (0.23, Gladman & Askew 2024) the envelope becomes 0.0833 W, and the flying-fish shortfall is about 10 to 30 times (central about 20), not 29 to 38. E3 is now version 2.0.0, scoped to its sources; version 1.0.0 is kept. What survives: sustained aerobic flight is still ruled out by an order of magnitude.

And the caveat that keeps it honest: No flying-fish respirometry exists in the project, so the correction is a cross-taxon transfer like the original proxies. No zebrafish cardiac output during exercise was found; which of cardiac output or blood O2 content is low is inferred through Fick. Every case keeps propulsive efficiency at 1 and the best L/D, so the real shortfall is larger than each figure.

zebrafish MO2 at U_crit, measured (mg O2/kg/h)2,630
O2 uptake the old ceiling allowed (mg O2/kg/h)950
old E3 envelope at 0.06 kg (W)0.046
new E3 envelope at 0.06 kg (W)0.083
flying-fish shortfall, original snapper proxies (×)38
flying-fish shortfall, new E3 envelope (×)16
flying-fish shortfall, corrected central (×)20

physics/FICK-CEILING-CHECK.md · lean/registry/laws/E3.json · lean/registry/law-versions/E3@1.0.0.json · lean/empirical.json (E3) · sim-engine/scenarios/current.mjs

✕ CORRECTED

"The papers disagree on sign" about the membrane-potential change caused by gain-of-function kcnk5b

Found by: trying to FORMALISE the dispute in Lean: writing both arms as named hypotheses forced a check of which paper asserted which sign, and the attribution did not survive it

Jiang 2024 proposes a RECONCILIATION of the two readings, not a contradiction of Perathoner 2014: the increased K+-channel activity first hyperpolarizes the membrane potential, and this increase immediately activates Na+ channels to depolarize the cells. Our own stored evidence held that sentence all along — it is in genotype/causal-chains.json with full-text provenance — but the prose summary built from it dropped the third position and recast a reconciliation as a dispute, putting a disagreement in a cited author’s mouth.

And the caveat that keeps it honest: The scientific gap is real and unchanged: no steady-state membrane potential of a wild-type versus alf zebrafish fin-bud cell exists in any source we have fetched, so the direction in the tissue that matters is unresolved. What changed is that it is now a three-arm open question rather than a two-sided dispute, and the two published readings are provably NOT formally contradictory — they conflict only under an added same-preparation premise, carried explicitly as a Lean hypothesis.

arms, after formalisation3
arms formally contradictory without a same-preparation premise0
steady-state fin-bud membrane potentials in any fetched source0

genotype/CAUSAL.md (kcnk5b row; unresolved-questions list) · lean/registry/open-questions/questions/oq-kcnk5b-vm-sign.json · lean/registry/open-questions/lean/KcnkSign.lean

! SPLIT: half resolved, half open

"lat4a = ZFIN slc43a2a, settled"

Found by: a collaborator's independent graph (record gx-problem-lat4a-identity), concurring with our own HANDOVER.md note

The question had to be split, because the answer differs for its two halves.

✓ RESOLVED

Which zebrafish gene carries the paper's mutant allele

slc43a2a, on two records a name lookup cannot reach:

  • Daane 2021 mapped the nr21 mutation to chromosome 15; slc43a2a is on chromosome 15 and slc43a2b on chromosome 10 (NCBI Gene 393221, 494042, fetched 2026-10-31)
  • ZFIN features-affected-genes: allele dmh26 (the paper's nr21) 'is allele of' slc43a2a

Withdrawn as a resolving record, because it names the family and not the paralogue: human SLC43A2 aliased LAT4: names the family, not the teleost paralogue; Ensembl display name SLC43A2 on the medaka gene: names the family, not the paralogue.

– UNRESOLVED

Which paralogue carries the flying-fish signal

Candidates: slc43a2a or slc43a2b.

  • phyloP on the flying-fish branch, slc43a2b: accelerated, p=1e-05
  • phyloP on the flying-fish branch, slc43a2a: accelerated, p=0.00837
  • relative evolutionary rate for gliding sits on slc43a2b (rho 0.324, p 0.00654, q 0.253) — not significant after correction

The convergent F326L substitution is listed on one medaka gene id which the sequences thread assigns to slc43a2a, but both paralogues carry acceleration, so the comparative signal is not paralogue-resolved.

Not the same variant. The zebrafish allele this project's design uses is T200K; the convergent substitution reported in flying fishes is F326L. Different sites, different species, and not the same variant.
rows of the cross-check that DISAGREE with us (this is the only one)1

genotype/map.vetted.slim.json (fin_size.verified_leads[].paralogue_check) · crosscheck-frontier/crosscheck.json (row G5)

2 of 7

The design test failed, and the claim is dropped as unsupported

Validation of the DESIGNED organism (the "winged zebrafish") against the REAL flying fish (Exocoetidae), genetically and phenotypically.

Pre-registered and hash-verified. design-validation/PREREG.md was hashed to sha256 ea6f99eb25b48cdb… at 2026-10-31T22:00:34Z, hashed before the first number was produced. The hash in PREREG.sha256 matches the one the scorecard records, checked in this build.

The one honest sentence, from the report: On the axis the whole design is about we cannot say how close it is, because the measurement exists only inside a figure we refused to digitise; the one morphological axis that can be scored puts the design exactly on the zebrafish and none of the way to the flying fish; and genetically the design reproduces 1 of the 74 loci known to differ in flying fishes (1.4 %), that one being a real convergent hit on `lat4a`/`slc43a2a` while the other half of the design is a gene with no flying-fish evidence at all.

And: the design is not ours.

design-validation/scorecard.json · design-validation/PREREG.md · design-validation/PREREG.sha256 · design-validation/REPORT.md · design-validation/RUNS.md

These are numbers about a model, not measurements of a fish. "The design" is a specified genotype plus the zebrafish body it is specified against. Where a row below gives the design a value, that value is a specification statement unless it says otherwise. The only measured animal in this section is the real flying fish.

Part 1 — the per-axis table: 1 of 10 axes scorable

f = (design − zebrafish) / (flying fish − zebrafish): 0 means the design has moved none of the way from the baseline to the target, 1 means all of it. Greyed rows could not be scored at all.

#axiszebrafishflying fishdesign (model)fverdict
1 pectoral fin length / SL NO VALUE 0.687 NO VALUE — – CANNOT SCORE
2 caudal fin length / SL NO VALUE NO VALUE NO VALUE — – CANNOT SCORE
3 median (dorsal and anal) fin length / SL NO VALUE NO VALUE QUALITATIVE ONLY — – CANNOT SCORE
4 lower caudal lobe / SL (hypocercality) NO VALUE NO VALUE QUALITATIVE ONLY — – CANNOT SCORE
5 lepidotrichial segment length 290.7 micrometres NO VALUE NO VALUE — – CANNOT SCORE
6 pectoral fin ray count 10 NO VALUE NO VALUE — – CANNOT SCORE
7 body mass vs standard length exponent b 3.22 2.981 3.22 0.00 ✕ FAIL
8 lateral fin area vs SL exponent NO VALUE 1.834 NO VALUE — – CANNOT SCORE
9 wing loading vs SL exponent NO VALUE 1.236 NO VALUE — – CANNOT SCORE
10 maximum body depth / SL 0.2865 NO VALUE 0.2865 — – CANNOT SCORE
Why nine axes cannot be scored (an axis can carry more than one reason)
design value exists only in a figure (not digitised)3
design value is qualitative only (a word, not a number)2
no reference (flying-fish) value in any fetched source6
no baseline (zebrafish) value in any fetched source5

an axis can carry more than one reason, so these do not sum to 9

Verdict: NOT CLOSE, and largely UNSHOWN. 9 of 10 axes cannot be scored. The single scoreable axis scores FAIL at f = 0.00. The axis the entire design claim rests on (pectoral fin length / SL) cannot be scored, and for two independent reasons at once.

Pre-registration deviation, logged: See RUNS.md deviation 1. The letter of the pre-registered rule would award "close" by default here, because none of the three FAIL triggers can fire at n_scored = 1. That reading is refused: the only scored axis is a FAIL, and the result is reported as NOT CLOSE.

design-validation/scorecard.json (part1_phenotypic)

Part 2 — the four genetic counts

74A: loci known to differ in flying fishes (sheet G ∪ sheet I of Daane 2021 Data S1)
1B: design changes that are among them — lat4a/slc43a2a
1 / 74 = 0.0135C = B/A. Band: TOKEN (0.01 <= C < 0.10)
1D: design changes with no flying-fish evidence at all — kcnh2a (the longfin dt2 cis-regulatory inversion)

Reading: the design reproduces 1.4 % of the loci known to differ in flying fishes: a real, named hit on one convergent locus, and negligible as a fraction.

Context: 74 loci against the 23,611 predicted protein-coding genes of the Hirundichthys speculiger assembly (Xu et al. 2021, fetched in this thread) = 0.31 % of the gene set. The 74 is what is KNOWN to differ, not what differs.

Half of the design has no flying-fish evidence: half of the design is a locus with no flying-fish evidence at all. It was chosen because it overgrows fins in zebrafish, not because flying fishes changed it.

POST-HOC (exploratory); not pre-registered, and not in the headline: with the phyloP sheet added to the denominator, A = 131 and C = 0.00763. adding the phyloP sheet to the denominator moves C below 0.01, into the pre-registered "negligible" band. The pre-registered answer stands; this is reported because the choice of denominator changes the band, and a reader is entitled to know that.

design-validation/scorecard.json (part2_genetic)

Part 3 — the Lean gate, for both arms

PASSES = no violated and no cannot-evaluate; FAILS = any violated; UNDECIDED = no violated but some cannot-evaluate. UNDECIDED IS NOT A PASS.

✕ The real flying fish: FAILS✕ The design (the model): FAILS– The real fish, design inputs only: UNDECIDED
Of the 21 constraint rows, how many each arm actually decides. Longer grey means the gate said nothing.
Three of 21 rows carry the whole verdict one bar per arm · 21 rows = full width The real flying fishFAILS2118The design (the model)FAILS1218The real fish, design inputs onlyUNDECIDED120
✓ holds✕ violated– cannot evaluate (no input)

design-validation/scorecard.json (part3_lean_gate.tallies, .verdicts)

The real flying fish also fails

E3 (empirical, Delphi.Empirical.no_aerobic_flight_above_ceiling): level flight at 10 m/s needs 1.34645 W against an aerobic ceiling of 0.0458 W — short by a factor of 29.4. the REAL flying fish fails this row: level flight at 10 m/s needs 29 times its aerobic ceiling. This is the known and expected result (flying fishes glide, they do not fly), and it is exactly why a design that "passes" a row the real animal fails must be treated as suspicious rather than as better.

So failing does not separate the design from its target. the real flying fish ALSO FAILS the gate (E3, by a factor of 29), so "FAILS" does not separate the design from the target

And the gate is weak: 3 of 21 rows are decided

THE GATE IS WEAK. All 3 supplied inputs move a verdict, but only 3 of 21 rows are decided, and the two body inputs move the same single pair of rows (C7b and E2 are one fact). Lean is testing the design on body size, and on whether one amino-acid change is reachable in one nucleotide substitution. It is testing nothing aerodynamic, nothing developmental and nothing about the fins, which is the entire point of the design.

input droppedrows whose verdict changed
SL_mC7b E2
mass_kgC7b E2
genotype_editsG1
The design's 2 violations, with the qualification each carries

C7b (proved, Delphi.Constraints.exponent_rules_out, design-only). Needed: an implied mass exponent within 3 +/- 0.1 against the reference specimen. Available: 2.651.
the REAL fish is cannot-evaluate on this row only because it IS the reference specimen (lengthRatio = 1), so the row cannot test the animal it is calibrated on. The violation is real, but its content is a BODY-SIZE mismatch: a 4.4 cm, 1.06 g zebrafish against a 20.3 cm, 60 g flying fish.

E2 (empirical, Delphi.Empirical.weight_ratio_rules_out, design-only). Needed: {"exponent_between":[2.9,3.02]}. Available: {"exponent":2.65111}.
the same single underlying fact as C7b, not a second independent failure. Empirical band: a reader may reject the observation it rests on.

design-validation/scorecard.json (part3_lean_gate) · lean/eliminate/browser-check.mjs

Part 4 — the design is not ours, and the locus it "reproduces" is a different residue

YES, ENTIRELY. The design IS Daanes double heterozygote. Every phenotypic claim the design makes is a claim about an animal that Daane et al. already built, scored and published in 2021, and the authors had already stated that it phenocopies the flying-fish bauplan. That is a result about their experiment, not about us. Our contribution here is the validation arithmetic, not the organism.

YES: Daane et al. 2021 built exactly this double heterozygote and state it phenocopies flying-fish fin proportions. Its measurements are figure-only.

  • the numbers are FIGURE-ONLY: Figure 4B pectoral fin length, Figure 4C caudal fin length, Figures S2A and S2B lepidotrichial segments. No numeric value appears in the text, the legends, or the fourteen sheets of Data S1.
  • segmentation is regular, unlike the kcnk5b overgrowth mutant: a quality claim, not a measurement
  • the overlap with flying fishes is at lat4a only, and the convergent flying-fish substitution is F326L while the zebrafish allele is T200K: a DIFFERENT residue in the same gene
  • the glider RER signal and the strongest phyloP acceleration are on slc43a2b, the paralogue, not on the slc43a2a the allele sits in
What the authors actually wrote (4 quotations)

fin-type specificity, the actual resultInterestingly, double mutants between kcnh2alof/+ and lat4anr21/+ are viable and show specific, non-additive variation in proportion among fins: while all fins of kcnh2alof/+ are overgrown and all fins of lat4anr21/+ are shortened, the lat4anr21/+;kcnh2alof/+ fish show wild-type-sized medial fins, while the paired fins are overgrown (Figure 4).PMID 34534441

the caudal finSurprisingly, the caudal fin of kcnh2alof/+;lat4anr21/+, while generally wild type in size, is hypocercal, with an elongated ventral lobe.PMID 34534441

body size is not reducedThe nr21 mutant, however, does not have a statistically decreased body size (Figure 3B).PMID 34534441

the authors own flying-fish claimThe overall fin phenotype of the kcnh2alof;lat4anr21 fish is thus remarkably similar to that of flying fishes, suggesting the interaction between these two genes is sufficient to phenocopy this key innovation and organismal bauplan of flying fishes (Figure 4).PMID 34534441

design-validation/scorecard.json (part4_the_real_experiment) · genotype/compare-2x2.json

The joint result

✕ NOT CLOSE (and 9 of 10 axes unshown)✕ FAILS

Read as: far AND fails. PREREG rule 1: far AND fails means drop the claim outright.

But read it with these qualifications, which the pre-registration required:

  • the two design violations are one fact (body size against a single reference specimen), and the real animal is untestable on those rows by construction
  • the real flying fish ALSO FAILS the gate (E3, by a factor of 29), so "FAILS" does not separate the design from the target
  • 18 of 21 rows are cannot-evaluate on the design, so the gate is weak and its FAILS verdict carries little information either way
  • Part 1 is better described as UNSHOWN than as far: the measurement that would settle it sits in a figure we refused to digitise

What actually follows: The claim that we can DESIGN an organism is not supported by this validation, and the reason is not that the design scored badly: it is that the design is not measurable on the axes that define it, and the one genetic number that can be computed (1/74) says the design reproduces a single convergent locus out of everything known to differ. Dropping the claim outright under rule 1 overstates what this gate can tell us; the honest position is PREREG rule 2, drop the claim as UNSUPPORTED.

design-validation/scorecard.json (joint_result)

3 of 7

What a simulation would actually need

How far the 4,571-gene functional-annotation map is from a parameter set a whole-organism developmental simulation could run on

0 / 18,733 = 0.000000%of the numbers a minimal dynamical model of these 4,571 genes would need, we hold this many
18,733= 18,284 gene parameters (4 each) + 449 edge strengths
84.4%of the same genes carry a functional annotation (3,857 of 4,571). Annotation is nearly complete; the parameters are absent.

In one sentence: Of the 18,733 numbers a minimal dynamical model of these 4,571 genes would need, we hold 0, because the eight parameter classes a simulation runs on are not what any of the queried databases stores for zebrafish.

The most generous reading we could defend: 2972 / 18,733 = 15.8651% — and all 2972 of those are PaxDb ppm values, a share of total protein mass in a whole organism or a dissected organ, not a count per cell in a named cell type at a named stage

This is a measurement of databases, not of fish. Zebrafish (Danio rerio) is the proxy. No flying-fish molecular data exists. No bird data was used or fetched: Aves is this project's frozen holdout.

simulation-readiness/readiness.json (ratio, headline)

Item by item

itemgenes we
hold it for
statewhat a simulation needs, and the source's own verdict
(a) 0 – none held absolute expression level in a defined cell type and stage, in molecules per cell or a calibrated concentration
No fetched source gives any of our genes an absolute abundance in molecules per cell, or a calibrated concentration, in a defined cell type at a defined stage.
(b) 0 – none held protein half-life or degradation rate
No fetched database gives this quantity for any of our 4,571 genes.
(c) 0 – none held mRNA half-life
No fetched database gives this quantity for any of our 4,571 genes.
(d) 0 – none held transcription rate or promoter strength
No fetched database gives this quantity for any of our 4,571 genes.
(e) 0 – none held binding affinity (Kd) for named partners, or Km/kcat if an enzyme
0 of 4571 genes (0.00%) have any kinetic constant in SABIO-RK, the one open kinetics database that answered. BRENDA's open endpoint holds no kinetic values at all.
(f) 4 ! partial diffusion coefficient, for anything secreted
Diffusion coefficients exist for 4 secreted zebrafish molecules (Fgf8a, Lefty2, Squint, Cyclops), all measured in the GASTRULA, 2 read in a primary source and the rest quoted second-hand. Shh in the fin bud, which is what the first validation target needs, is an explicit placeholder.
(g) 0 – none held Hill coefficient or equivalent cooperativity for regulatory inputs
No fetched database gives this quantity for any of our 4,571 genes.
(h) 5 ! partial signed, directed, experimentally supported edge list between our genes, with strengths
449 of the 10,444,735 unordered gene pairs (0.00430%) have any direct experimental support in a fetched source (STRING experiments channel plus IntAct, both undirected and unsigned). Signed, directed, experimentally supported gene-gene edges with a named experiment: 5. With a strength: 0.

Item (h) is a network, so its denominator is gene pairs, not genes: 449 of 10,444,735 unordered pairs (0.00430%) have any direct experimental support, and none of it is signed, directed and quantified.

simulation-readiness/readiness.json (items, checklist)

The figure the readiness thread drew

Coverage of each simulation parameter across the 4,571 genes of the DELPHI genotype map Horizontal bars. Functional annotation covers 3,857 of 4,571 genes. Items (a) to (g) of the simulation-parameter checklist cover 0, 0, 0, 0, 0, 4 and 0 genes respectively; 2,972 genes have a PaxDb ppm value as a substitute for item (a). The regulatory network is reported separately because its denominator is gene pairs. Functional annotation is nearly complete. The quantities a simulation runs on are not there. For each of the 4,571 genes in genotype/map.vetted.json, how many have the quantity in a source fetched on 2026-10-31. Hover any mark for the query. Checklist items (a) to (g) are per gene. Item (h), the regulatory network, is below on its own scale: its denominator is gene pairs, not genes. Proxy species: zebrafish (Danio rerio). No flying-fish molecular data exists. No bird data: Aves is the frozen holdout. the quantity a simulation needs, as the checklist defines it the nearest substitute in a fetched source: wrong unit, wrong scale, or not measured functional annotation, shown for contrast (a label, not a quantity) 0 1,000 2,000 3,000 4,000 4,571 genes with the quantity (of 4,571) Functional annotation (GO, Reactome, KEGG) 3,857 Functional annotation (GO, Reactome, KEGG): 3,857 of 4,571 genes. genotype/pathways.slim.json, built from the ZFIN GO association file, Reactome v98 (every zebrafish row inferred by orthology from human) and KEGG dre, retrieved 2026-10-31. This is the premise under test, not a simulation parameter: a pathway name is a categorical label. (a) absolute abundance, molecules per cell 0 (a) absolute abundance, molecules per cell: 0 of 4,571 genes. Strict: no fetched source gives any of these genes a count per cell or a calibrated concentration in a named cell type at a named stage. Substitute: PaxDb v6.1 Danio rerio, pax-db.org/downloads/latest/datasets/7955/ (35 datasets offered), retrieved 2026-10-31. Its unit is ppm, a share of total protein mass in a whole organism or a dissected organ. Expression Atlas holds 25 zebrafish experiments, all in TPM or FPKM, which the checklist excludes. (a) absolute abundance, molecules per cell, substitute (have a PaxDb ppm value instead): 2,972 of 4,571 genes. Strict: no fetched source gives any of these genes a count per cell or a calibrated concentration in a named cell type at a named stage. Substitute: PaxDb v6.1 Danio rerio, pax-db.org/downloads/latest/datasets/7955/ (35 datasets offered), retrieved 2026-10-31. Its unit is ppm, a share of total protein mass in a whole organism or a dissected organ. Expression Atlas holds 25 zebrafish experiments, all in TPM or FPKM, which the checklist excludes. 2,972 have a PaxDb ppm value instead (b) protein half-life or degradation rate 0 (b) protein half-life or degradation rate: 0 of 4,571 genes. BioNumbers census (every zebrafish entry in the database, 19 of them, all result pages followed): not one is a protein half-life. PaxDb offers no zebrafish turnover dataset among its 35. Europe PMC returns 2,228 papers on the subject, so the measurement exists in prose and figures, not in a table a simulation could read. (c) mRNA half-life 0 (c) mRNA half-life: 0 of 4,571 genes. BioNumbers census: no zebrafish mRNA half-life. Europe PMC returns 820 papers. No queried database holds it per gene. (d) transcription rate or promoter strength 0 (d) transcription rate or promoter strength: 0 of 4,571 genes. BioNumbers census: no zebrafish transcription rate or promoter strength. Europe PMC returns 451 papers. (e) Kd, or Km and kcat if an enzyme 0 (e) Kd, or Km and kcat if an enzyme: 0 of 4,571 genes. SABIO-RK holds 77,042 kinetic-law entries over 7,130 UniProt accessions. 5 of those accessions are zebrafish (48 entries for Danio rerio in all), and not one of the five genes behind them (adh8a, adh8b, grk1a, grk7a, ido1) is in this map. BRENDA's only open programmatic endpoint, the DSMZ SPARQL prototype, has no Km, kcat, Ki or Kd class or predicate anywhere in its 10,987,199 triples, and its website search for 'Danio rerio' returned no results. Queried 2026-10-31. (f) diffusion coefficient, if secreted 4 (f) diffusion coefficient, if secreted: 4 of 4,571 genes - too few to draw at this scale, shown as a tick. Four secreted molecules have a fetched coefficient: Fgf8a, Lefty2, Squint and Cyclops (sim-engine/params/zebrafish-morphogens.json, fetched 2026-10-31), every one measured in the GASTRULA, two read in a primary source and the rest quoted second-hand. The fifth, Shh in the pectoral fin bud, which is what the first validation target needs, is an explicit placeholder with no value. Counted as molecules, not genes. (f) diffusion coefficient, if secreted, substitute (more: a placeholder with no value): 1 of 4,571 genes - too few to draw at this scale. Four secreted molecules have a fetched coefficient: Fgf8a, Lefty2, Squint and Cyclops (sim-engine/params/zebrafish-morphogens.json, fetched 2026-10-31), every one measured in the GASTRULA, two read in a primary source and the rest quoted second-hand. The fifth, Shh in the pectoral fin bud, which is what the first validation target needs, is an explicit placeholder with no value. Counted as molecules, not genes. 1 more: a placeholder with no value (g) Hill coefficient or cooperativity 0 (g) Hill coefficient or cooperativity: 0 of 4,571 genes. SABIO-RK does carry 'Hill coefficient' among its 39 parameter types, so the gap is zebrafish coverage, not schema. BioNumbers census: no zebrafish Hill coefficient. Europe PMC returns 507 papers. (h) the regulatory network, on its own scale: 10,444,735 unordered pairs among the 4,571 genes STRING v12 zebrafish, experiments channel only (transferred evidence excluded), union with IntAct curated pairs between two of these genes (80). Undirected and unsigned, with a confidence score rather than a strength. Across the WHOLE zebrafish proteome STRING holds only 3,873 such edges, touching 612 proteins, against 4,070,667 edges whose experimental evidence is transferred from another species. Retrieved 2026-10-31. 449 pairs with direct experimental support 0.0043% of all pairs genotype/causal-chains.json cross_gene: epistasis and pathway-order statements, each with a verbatim quote from a fetched paper. None carries a rate constant. 5 signed, directed edges with an experiment kcnh2a, lat4a, kcnk5b, calcineurin No fetched source gives a strength, weight or rate constant for any edge between two of these genes. 0 edges with a measured strength in any fetched source OmniPath serves taxa 9606;10090;10116 and refuses 7955, so CollecTRI's 64,516 human signed TF-target edges can reach these genes only through ZFIN orthology, most of it protein BLAST. A hypothesis list, not zebrafish data, and one human edge can map to several zebrafish pairs. Retrieved 2026-10-31. 17,804 edges only by orthology transfer human CollecTRI via ZFIN orthologs Headline: 0 of the 18,733 numbers a minimal model needs are held - 4 per gene for (a) to (d), plus one strength per edge of the 449-edge list. Relaxing item (a) to accept a PaxDb ppm value raises that to 2,972 of 18,733, or 15.9%. Every query is logged in simulation-readiness/calls.json.

simulation-readiness/coverage.svg (embedded as built, not redrawn)

The worked example: one genome says it in one sentence

One species states the annotation-versus-parameter gap better than any aggregate: a genome with essentially complete functional annotation and, in the paper that reports it, none of the eight parameters.

Hirundichthys speculiger, the mirrorwing flyingfish: 23,611 predicted protein-coding genes, 23,492 (99.5%) annotated. Read: full text and both supplementary archives, fetched and parsed by this script.

And in that same paper, counted term by term: all 25 parameter-bearing terms occur 0 times in the full text — rna-seq, half-life, kcat, diffusion, hill coefficient, molecules per cell and the rest. The verification is a count, not an inference.

'Functionally annotated' here means at least one hit in at least one of four databases. TrEMBL alone supplies 23,477 of the 23,492, and a TrEMBL hit is a sequence-similarity match to an unreviewed entry, not a measured function. Annotation by homology is the weakest sense of the word.

simulation-readiness/readiness.json (worked_example)

The precedent, to size the task

The closest thing that exists to what is being asked: a model that predicts phenotype from genotype for every annotated gene of an organism.

  • 525 genes, in 28 sub-models — the life cycle of a SINGLE CELL; no anatomy, no tissues, no development
  • built from over 900 primary sources and more than 1,900 experimentally observed parameters
  • that is 3.62 parameters and 1.71 publications per gene

Not a prediction, just the same parameter density applied to a larger gene set, to size the task. Development would need more, not fewer, parameters per gene: a zygote-to-adult model adds cell states, positions, divisions and movements that a single bacterial cell does not have.

simulation-readiness/readiness.json (precedent_m_genitalium)

What is simulatable today, and at what coarseness
  • A reaction-diffusion model of one morphogen gradient over a continuum, not over genes — with the 4 fetched zebrafish diffusion coefficients plus the Fgf8 residence time and gradient length in sim-engine/params/zebrafish-morphogens.json. Coarseness: concentration in arbitrary units, one tissue, gastrula parameters carried to whatever stage is being modelled, which the file itself flags as an assumption
  • A 2-node Boolean or qualitative model of the fin-size switch — with the 5 signed directed gene-gene edges in genotype/causal-chains.json cross_gene (kcnh2a, lat4a, kcnk5b, calcineurin) and the 12 calibrated interventions. Coarseness: signs and orderings, no rates; outcomes as larger / smaller / unchanged
  • A growth and allometry trajectory for the whole animal — with development/ (staging, growth, allometry) and physiology/ (25 fetched sources). Coarseness: whole-organism, no genes in the loop; the genotype enters only through the 12 calibrated knobs on 19 morphology parameters
  • A curated small network over a handful of cell states: the project's own estimate of its ceiling — with the 42 causal chains, the 30 tissue-to-tissue and cell-to-cell interactions, and the 449 experimentally supported STRING edges as a candidate topology. Coarseness: topology and sign where known; every rate constant would be a free parameter fitted or assumed, so the model would be a hypothesis generator, not a prediction

And what is not:

  • A zygote-to-adult simulation in which the 4,571 genes are dynamical variables.
  • Any model whose output depends on absolute concentrations, since not one gene has one, and ppm cannot be converted without a total protein count per zebrafish cell that no fetched source gives.
  • Any model whose output depends on timescales, since no gene has an mRNA or protein half-life and no gene has a transcription rate: every timescale would be invented.
  • A genome-scale regulatory network: 0.004% of gene pairs have direct experimental support, none of it signed, directed and quantified. The only genome-scale option is orthology transfer from human CollecTRI (17,804 transferable edges), which is a hypothesis list, not zebrafish data.
  • Anything at all in a flying fish: see the worked example.

simulation-readiness/readiness.json (simulatable_today)

4 of 7

What held up

Results that survived their own checks today. Each carries the scope it holds in, and what it does not bound.

Aerobic flight is eliminated for the real flying fish — under named proxies

✕ 3 of 3 candidates eliminated ✓ 3 kernel-checked ✓ compile exit 0, 15.3 s, 3 theorems

the physiology chain’s own proxy numbers put to the aerobic bound. The three candidates:

candidateverdicteliminated on
real-fish-sustained-aerobic-flight
Could the real flying fish sustain level flight on aerobic power (the question of physics test 4)?
✕ eliminatedC14
accepts fick_aerobic_supply
flier-F1-sustained-aerobic-cruise
Could the HYPOTHETICAL flier F1 sustain powered level flight at 7 m/s on aerobic power?
✕ eliminatedC14
accepts fick_aerobic_supply
real-fish-aerobic-flight-at-vmin
The same question at the minimum speed itself
✕ eliminatedC14
accepts fick_aerobic_supply

The scope it holds in. eliminates the quantitative form given here to a source hypothesis, under the committed inputs (proxies where so labelled), not the source itself Every physiological input is a proxy from another teleost: cardiac output from snapper, arterial oxygen content from a trout curve, efficiency from salmon ventricle.

What it does NOT bound. The hypotheses that could be wrong are the proxies, and the theorem does not bound burst power on white-muscle stores, which is what the fish actually uses. It also cannot rule on 150 constraint evaluations across the three candidates, every one of them for a missing input.

Rank nothing by elimination count: a problem with more eliminated candidates is not more solved; it only had more candidates these theorems happen to touch.

lean/eliminate/ledger.physiology.json · lean/AUDIT-FLYING-FISH.md

The single-glide bound

! violated

the single-glide model's hypotheses fail for the field figures: from 8 m with the stuffed-model (L/D)max 4.37 the bound is 35.0 m, below the 400 and 50 m reported; with the theoretical (L/D)max 15.7 it is 126 m, which covers 50 m but not 400 m. The theorem is untouched; what fails is the reading that a field flight is one unpowered glide (taxiing thrust from the tail, repeated touch-and-go and wind are outside the model)

What that means: the pure-glide reading of the field distances is ruled out with the measured L/D.

And the minimum-speed bound holds on the measured specimen: The exact minimum-speed bound HOLDS on the Park and Choi specimen: v_min = 9.85 m/s for specimen L3 (W 0.5886 N, reference area 0.012688 m2, C_Lmax 0.78, rho assumed 1.225) is below the quoted field airspeeds of 10 to 20 m/s, so the real fish is inside its own lift envelope; the illustrative claim of 5 m/s is ruled out.

lean/AUDIT-FLYING-FISH.md (glide_range_le, vmin_le) · physics/glide-data.csv

Every theorem put against the real flying fish

– cannot-evaluate: 103✕ violated: 14✓ holds: 35

Applicability, as the audit records it: yes-under-named-hypotheses 99 · yes 38 · no 15. A theorem is never falsified by data; its hypotheses are.

And the statements are not vacuous: 63 mutants of the Lean statements and data were generated and 63 were rejected, with 19 of 19 controls passing, in 347.3 s wall clock (3.91× speedup over summed compile time).

The law catalogue: 41 laws, of which 23 proved, 1 proved from a named hypothesis, 2 stated-not-proved (a named hypothesis), 7 not formalised, 6 empirical observation, 1 project convention, 1 proved (listed with the observations). Coverage is explicit: "proved" entries come from the compiler's report and the constraints file; "stated-not-proved" entries are hypotheses the modules carry by name; "not formalised" entries are gaps the Studio must not treat as checked. "All the biological laws" is not a closed set; this file is what the project has, and every law not here is unchecked.

lean/AUDIT-FLYING-FISH.md · lean/mutations.json · lean/laws.json

Six things the literature does not support in zebrafish

Each was proposed from tetrapod limb biology or assumed across fishes, and each was checked against the zebrafish evidence.

statusthe assumption, and what the evidence says
✕ not-establishedThe tetrapod AER/mesenchyme feedback loop runs on Fgf AND Wnt signals in both directions in the zebrafish pectoral fin.
The Fgf arms are supported in zebrafish, but the Wnt arm is explicitly NOT established there. Leerberg 2019 states that the Wnt-mediated induction of AER Fgfs known from chick and mouse 'has yet to be established in zebrafish'.
✕ refutedAER Fgf8/Fgf24 signal back to the mesenchyme to maintain mesenchymal fgf10 expression, as in mouse and chick.
This specific leg is a hypothesis in zebrafish and is contradicted by the one zebrafish experiment that separates the two. Leerberg 2019 writes that it is only 'likely' by analogy to chick and mouse.
✕ not-establishedThe ZPA is the source of anteroposterior positional information in the zebrafish pectoral fin bud, as Shh is in the tetrapod limb.
Only partly. In shh-null sonic you mutants some aspects of anteroposterior polarity are set up WITHOUT Shh and only later depend on it for maintenance, so the zebrafish ZPA is not the sole source of anteroposterior information.
✕ refutedShh from the fin basal epidermis drives proliferation of the underlying skeletal progenitors during ray growth and regeneration.
Refuted for proliferation. Braunstein 2021 found no change in EdU+ intra-ray cells under Smoothened inhibition and states that earlier pro-proliferative conclusions may have been cyclopamine off-target effects…
✕ refutedwnt10a signalling maintains the pectoral fin fold (ZFA:0005317).
Shown for the MEDIAN fin fold, not the pectoral fin fold. wnt10a mutants collapse the median fin fold and fail adult unpaired fin metamorphosis; the abstract reports no pectoral fin fold phenotype, and the mechanism is loss of distal character (dlx2a, then col1a1a and other ECM genes) and actinotrichia positioning, not a named ligand acting on a receptor in…
✕ refutedHGF/MET is the conserved signal that pulls muscle precursors into the paired fin, so it can be assumed for any fish fin.
It holds in zebrafish (met CRISPR null loses pectoral abductor muscle) but not across gnathostomes: in shark, Hgf and Met are not expressed at the right time or place for fin muscle precursor delamination and migration.

genotype/nanopubs/unsigned/refutation-1…6-*.trig · nanopubs-index/index.json

Two data pitfalls with no prior published report

  • Ubergraph stores ontology cross-reference values as xsd:string-typed literals, so a SPARQL VALUES block of plain literals matches nothing and returns an empty result with HTTP 200: the same query for the pectoral fin's ZFA cross-reference returned 0 rows with a plain literal and 1 row with a typed literal
    genotype/nanopubs/unsigned/gotcha-ubergraph-typed-literals.trig
  • Bgee 15.2 and ZFIN's Ensembl 1:1 table use different Ensembl releases, so 1614 zebrafish genes (fgf10a and shha among them) appeared twice under different ids until merged on exact symbol
    genotype/nanopubs/unsigned/gotcha-bgee-zfin-ensembl-release-mismatch.trig

No prior published report of either pitfall was found. The grounding searches returned only the databases' own resource papers and unrelated ontology work, so these appear to be new contributions. Both records should cite the resource papers they are about, and currently cite none of them.

nanopubs-index/README.md (literature grounding) · nanopubs-index/index.json

The sequence results

Gliders do not converge at these genes. Across the nine fin genes, 11 alignment columns show a residue shared by gliders of two or more lineages and absent from their non-gliding relatives, against 17 columns for the role-swapped baseline. At the lat4a site where flying fishes and gliding halfbeaks carry L, every other glider and flier with data carries F: the fish convergence does not extend to mammals. Gliders do not resemble each other more than they resemble other lineages' non-gliders (see mean_identity_cross_lineage): identity follows ancestry, not gliding. Most of the few 'convergent' columns pair colugos with bats, two lineages whose control is the same human sequence, so a human-specific residue alone produces them; they are not evidence of shared glider biology.

11alignment columns with a residue shared by gliders of two or more lineages and absent from their non-gliding relatives
17columns for the role-swapped baseline — more than the glider count
16 of 17species at the lat4a site 326 carrying F. Only the flying fish carries L: the fish convergence does not extend to mammals.

The nine genes were chosen from zebrafish fin biology, not from glider biology, so absence of convergence here says nothing about the rest of the genome. Birds (class Aves) are excluded until the project holdout exam runs.

The derived-site panel is not a dose-response

groupspecies sequencedpectoral fin / SL, group medianmean derived states of 38 sites
needlefish or saury (non-gliding)120.0880
range [0,0]
halfbeak (non-gliding)120.140
range [0,0]
flying (gliding) halfbeak20.27424
range [23,25]
flying fish (Exocoetidae)90.68721.4
range [17,24]

Slightly inverted, and not a test. Gliding halfbeaks, at a fin ratio of 0.274, carry 24 of the 38 derived states; flying fishes, at 0.687 — roughly 2.5× the fin ratio — carry 21.4. The count goes slightly down as the fin gets longer, so derived-state count does not scale with fin length.

  • A LADDER TO READ, NOT A TEST. Four groups (needlefish/saury, halfbeak, gliding halfbeak, flying fish) is far too few for any statistical claim.
  • THE NON-GLIDERS SCORE ZERO BY CONSTRUCTION. Sheet G lists only substitutions shared by gliders and ABSENT from outgroups, so non-gliding species carry the ancestral residue at these sites by definition; the zero is circular and is not a finding.
  • TRACKING IS NOT CAUSING. A residue that changes along with fin length across the series is consistent with involvement and is not evidence of causation.

And the scale of the edit, against natural divergence

The winged zebrafish differs from its reference by 2 edited loci and 1 amino acid. In just the 37 causal-chain proteins with medaka orthologues, zebrafish and medaka (same class, different orders) differ by 7300 amino-acid substitutions (16054 positions counting indels) (median identity 79.2%); zebrafish and a bat (Myotis) by 10205 substitutions in 33 proteins (median 74.0%); zebrafish and human by 10765 substitutions in 37 proteins. A handful of edits against thousands of differences in a few dozen proteins, and these are only the coding differences in a tiny gene sample: the genome-wide difference, coding and non-coding, was not measured here and is necessarily larger.

About the model. The "winged zebrafish" is 2 edited loci and 1 changed amino acid against the zebrafish reference protein set. That is a statement about a specified genotype, not a measurement of any animal that was built and weighed here.

sequences/gliders.json · sequences/progression.json · sequences/engineered-diff.json · sequences/README.md

5 of 7

Independent cross-check against a collaborator's graph

DELPHI headline findings cross-checked against the collaborator's Delphi Frontier knowledge graph. One row per compared claim. Read-only: no write tool was called against their server and no credential was used or requested. Every statement about their graph comes from a call logged in calls.json.

6✓ AGREE
4! PARTIAL
1✕ DISAGREE
15– WE-HAVE-THEY-DON'T
7– THEY-HAVE-WE-DON'T
33compared claims in all, one row each

The strongest corroboration

Our most load-bearing caveat holds from outside. Transfer of the lat4a x kcnh2a result to flying fishes is HYPOTHESIS ONLY: no flying-fish gene has ever been manipulated, the two conceivable routes (reverting lat4a F326L; reverting the kcnh2a regulatory state) are untested in any organism, and the one double mutant that changes fin proportion redistributes size between fins rather than scaling one fin up.

This is the strongest independent corroboration in the whole cross-check. Four separate records, from two different issuers and three different retrieval routes (Europe PMC abstract, NOAA full-text PDF, a local repository source register), all keep the transfer at hypothesis level; one of them types it that way in the schema itself (payload.origin = 'hypothesis'), and the Daane documentary registration calls it in terms 'an unestablished transfer hypothesis'. We searched their graph for any record asserting the transfer as established and found none. Their Problem also names the specific untried next step we do not have: search the 53 exocoetid SRA records for paired-fin lat4a/kcnh2a expression.

✓ AGREE

crosscheck-frontier/crosscheck.json (row G3) · crosscheck-frontier/REPORT.md (section 1.1)

The one disagreement

internally inconsistent: map.json says settled, HANDOVER says unproven. A genuine conflict on the same question from overlapping sources, and they are probably right. Both sides consulted ZFIN and NCBI Gene; they report 'lat4a' as neither a ZFIN symbol nor an alias, with 0 hits in NCBI Gene and UniProt, and they name slc43a2b as a second candidate our map never considers. Our 'settled' rests on an indirect chain (a human alias plus a ZFIN curator's attachment of the paper's phenotypes to slc43a2a), which is an inference, not an identity. Our own HANDOVER.md already flags the overstatement, so the real disagreement is between two of our files, with the collaborator on the side of our HANDOVER.

✕ DISAGREE

Our files: genotype/map.json; genotype/README.md; genotype/HANDOVER.md

crosscheck-frontier/crosscheck.json (row G5) · crosscheck-frontier/REPORT.md (section 2.1)

Two traps a reader must know about before counting any of this as agreement

! not independent

Their Lean check shares our Mathlib pin

Our lean/lake-manifest.json pins mathlib at 56a005855ea17e0b…. Their receipt declares 56a005855ea17e0b…. These are the same revision, compared in this build. So two apparently independent Lean checks share a trusted base.

Worse, their receipt bytes cannot be retrieved: their catalogue reports 0 artifacts declared downloadable, 0 hosted and byte-checked, and 0 formal receipt contents read. If their check is cited anywhere, it must be cited as a declaration we could not verify.

lean/lake-manifest.json · crosscheck-frontier/crosscheck.json (row L2) · crosscheck-frontier/REPORT.md (section 2.3)

! our own work reflected back

Much of their store is a bulk import of our registry

A large part of namespace node-a is a bulk import of DELPHI's OWN nanopublication registry: claim ids thompson1917-*, darwin1859-*, wolfram2002-*, levin-*, hamilton-*, and Evidence ids delphi-claim-test--*. They carry our claim IRIs under w3id.org/delphi/resource/claim/, our nanopub paths, our extractor agent id, our 'verification: lean' flags, and sources at github.com/fractastical/delphisci read 'through the keyless delphisci MCP'. A match on any of those ids is our own work reflected back and is never independent corroboration.

Of 1,287 claim versions in their store, 1,248 are in the node-a namespace and 39 in delphi-frontier; 1,214 declare no origin. Nothing in their store is accepted: every record examined carries imported_unreviewed or proposed.

crosscheck-frontier/crosscheck.json (reading_rules, their_store_as_measured)

No bird data was requested or reported anywhere in this cross-check: Aves is this project's frozen holdout.

6 of 7

The corpus: 157 unsigned drafts, and nothing published

Indexed: every unsigned nanopublication draft in the repo, plus the signed darwin-origin corpus counted separately. Snapshot 2026-10-31T22:12:39Z.

Drafts by thread

threaddrafts
lean55
organism-design35
genotype21
claim-tests15
physics13
holdout9
swarm9
total157

nanopubs-index/index.json

Validation result

✓ 157 of 157 pass np check ✓ 0 RDF parse errors – 157 report "Valid (but not trusty)"

Checker: nanopub-java 1.95.0, one run per file. The project's recorded trap is real and was handled: np check exits 0 on an RDF parse error, so the verdict is parsed out of the transcript rather than taken from the exit code.

issue reported on every recordrecords
Nanopub has no assertion template.157
Nanopub has no signature element.157
Unexpected graph uri: http://purl.org/nanopub/temp/np1/Head149
Unexpected graph uri: http://purl.org/nanopub/temp/np1/pubinfo149

Each of those is expected and by recorded decision: the records are unsigned drafts using purl.org/nanopub/temp/ placeholders, which are replaced by trusty URIs at signing.

nanopubs-index/index.json (drafts[].validation) · nanopubs-index/README.md (Validation)

Plainly: nothing is signed and nothing is published

Nothing here is signed or published. Signing is the ORCID key owner's decision and is still open.

  • 157 of 157 drafts carry no signature element, by design.
  • 157 of 157 use no human ORCID for attribution: the creator is the software agent until the key owner approves and signs.
  • A separate, older corpus of 247 records in darwin-origin/nanopubs/signed/ is signed and published, and is counted separately everywhere: SIGNED and published (trusty URIs, npx:hasSignature present). They are irreversible: corrections need a supersede, withdrawals a retract, both signed by the same identity. Nothing in this index touches them.

The decision that is pending is who holds the signing key. Publishing needs the key owner's explicit approval, test registry before production, and production never without it.

nanopubs-index/index.json (note, signed_corpus) · genotype/nanopubs/DECISIONS.md

7 of 7

What is still open

Read out of the "what should change", gap and limits sections the source files already carry. Nothing on this list was invented for the page.

What the cross-check says should change in what we claim

  • Fix `genotype/map.json:1604`.
  • State the shared Lean toolchain if their check is ever cited.
  • Never count the `thompson1917-*` / `darwin1859-*` / `wolfram2002-*` / `levin-*` / `delphi-claim-test--*` records as external agreement.
  • Nothing in the cross-check weakens the lat4a x kcnh2a caveat, the gja5a retraction, the aerobic-power elimination or any of the six refutations.
  • Two optional strengthenings, if the lead follows them up:
  • Add the Saro-Cortes stability-lift trade-off to the flier constraints

crosscheck-frontier/REPORT.md (section 5)

Findings that exist only as prose, with no record

List A: dashboard claims no nanopublication draft records. List B: drafts citing no external source.

  • A1. Two whole threads have zero records
  • A2. The sim-engine pre-registered test that FAILED
  • A3. Genotype headline numbers with no record
  • A4. Lean results with no record
  • A5. Two of sixteen claim tests have no evidence record
  • A6. Counting mismatches a reader will trip on
  • B. Drafts with no external source — 15 of 157 drafts

nanopubs-index/gaps.md

Limits of the simulation-readiness measurement

  • It measures databases, not the literature.
  • SIGNOR was unreachable, not empty.
  • PaxDb was sampled, not exhausted.
  • BRENDA's licensed bulk data was not obtained.
  • The 4-per-gene convention is a choice.
  • None of this is flying-fish data

simulation-readiness/README.md (Honest limits of this measurement)

Four mismatches found by building the TFF spec as a mesh

Found by building the spec as a mesh, and logged rather than fixed. Among them: only 29.5% of the required flight muscle fits inside the body. That is a property of the specification, not of an animal.

  • Two aspect ratios share one name (the substantive one)
  • Rounding
  • Two incompatible readings; no mesh satisfies both
  • The flight muscle does not fit

physics/flier/tff/SPEC-MISMATCHES.md

Deliberately not done in the design validation

  • Nothing was digitised from a figure.
  • No zebrafish pectoral fin ratio was invented
  • No bird data.
  • No `measured` value in any source file was altered
  • No personal identifier

design-validation/RUNS.md (Things that were deliberately not done)

Ideas not yet checked against prior art

Every idea or choice adopted in this project, with its origin. researched = survived a logged prior-art search; reach-synthesis = synthesised from other sources, not yet checked against prior art; serendipitous = arose by accident. Seeded 2026-10-31 by the hub; most entries are reach-synthesis because the research rule was adopted after they were made. See AGENTS.md, 'Standing order: every new idea is researched'.

originideas
reach-synthesis29
serendipitous7
researched5

36 of 41 adopted ideas have not survived a logged prior-art search.

decisions/ideas.json