Jello HurledLaboratory

Research

What fifteen months of evolving animals actually found

Simulated worlds where fitness is physics: an animal that doesn't eat dies, so there is no score to fool. Here is what came out, and what it cost.

The lab runs on one rule, learned the expensive way: evolution is exactly as intelligent as the test you give it. Every animal we built was precisely as good as its grader demanded, and every grader we built got gamed — a scoring function met by a constant emitter, a market ruler where doing nothing beat a real brain by 48 points. So the lab inverted its own premise and started designing worlds instead of animals. The animals are the readout. The test is the tool.

Failed result — good. Broken tool — bad.

Predictions are registered before runs. When a result and a prediction disagree, the result stands and the prediction stays in the record beside it.

Trace lines run under every claim. Most point at a data file or a probe script — the charts on this page are generated from those arrays at build time by build_charts.py, which is the only thing that writes them. A few point at a dated notebook entry: still checkable, but prose rather than an array, and the trace says which it is.

Where this came from

Before the life simulations there was a trading lab: neural networks bred rather than trained, producing returns that looked spectacular until the lab audited itself and found the grader could be satisfied by doing nothing. That audit is the reason every world below is built the way it is. Read chapter one →

Three lines, one constitution

Throng is the live lab — twelve notebook entries, forty-eight findings, one hundred and twenty-three tests. Evolution is the constitution: the arithmetic era, and the laws that still govern everything after it. Roxx was the market lab, and it is closed — which is itself a result, and it has its own section below.

What we found

Finding 01

The ceiling is real, selection finds it exactly, and memory breaks it

An animal's brain is a single linear layer. It can represent AND, OR and NOT for free, and can never represent XOR or a band — a food toxic when unripe, toxic when rotten, edible between. Both pin at 75% however the weights are set; proven by brute force over every separating hyperplane.

Selection driven at that ceiling lands on it exactly1.00 of ceiling, three tasks. One mechanism beats it: a gated memory write, evolved rather than designed, scoring 2.72× the static ceiling. Ablate the memory and it drops back to the ceiling exactly.

probes/ceiling_exam.py · finding 2026-08-25 · LAB_REPORT entry 12
Finding 02

Sex loses everywhere we can build it, and we measured the price

Founded fair at 50/50, sexual reproduction crashes to about 11% in roughly fifty generations, while a sham control carrying the same machinery for free drifts at 46%. The price, measured in situ: broadcast sex costs 20.1% of total fecundity — 37,092 divisions against 46,434 clonal, across four of four seeds.

Why hybrids lose is visible in one comparison. Blending two parents beats them both (0.555); a mosaic of their parts hurts (0.455 against a clone null of 0.502). The average of two policies is a policy. A patchwork is a chimera.

findings 2026-08-20 / 2026-08-22 · LAB_REPORT entry 11
Finding 03

We built the textbook Red Queen and it could not pay sex's bill

A matching-allele parasite, structurally blind to reproductive mode — a test scans the infection function's own code names to prove it — demonstrably chases its hosts: 81/256 genotypes held against 31 with the parasite frozen. It rescued sex nowhere.

Restrict recombination to the immune region alone, though, and it rises +0.201 ± 0.064 over the monolithic genome — +3.1 standard errors on the difference-in-differences, and a sign test of 12/16 at p=0.077. (That p-value is the sign test, which is common to both framings; the within-arm figure is +0.208 at +3.3 SE.) Both numbers travel together, and the second one is why this is a lead and not a result. The obstacle is not the theory. It is that our genome is one indivisible module.

finding 2026-08-24 · LAB_REPORT entry 12
Finding 04

An unbounded input manufactured whales

One input — a growth ratio — was the only unbounded number in two worlds. It reached 124 where every weight is clamped at 6, and it built immortal hoarders. Bounding it deleted the whales and left every ordinary body untouched.

The law came first and then found the bug: everything should have a reward and a cost, depending on who is asking. A quantity that only points one way is a score, and scores get farmed.

finding 2026-08-19 · see the Whale Ocean replay below
Finding 05

Wires between animals carry real computation

A channel one animal wrote and another read was provably load-bearing: blocking it dropped the genome to 49.5% — a coin flip. Nobody designed a protocol. Selection found that a neighbour's output is a sensor like any other.

evolution lab · finding 2026-07-23
Finding 06

Survival of the best luck: heritable timing without a clock

Jason predicted, unprompted and at breakfast, that the plants would evolve to reproduce in the morning. They have no clock sense, no time locus, nothing that can represent "morning" — and there was an argument on the other side proving no heritable handle could grab the phase.

Transplanted into fresh worlds, the evolved genomes still birth in the morning: 16/24 seeds, p=0.032. That is the minimum passing score on a threshold committed to before the run, and it is stated that way deliberately rather than rounded into something stronger. The preference is a lucky configuration of energy-budget genes, inherited whole and amplified because a morning daughter gets a full day to provision before her first night.

His mechanism, and his words for it: survival of the best luck.

photosim · 2026-08-29 · pre-registered bar, minimum pass

What the results cost

These are not caveats on the findings above — they are the reason the findings above can be believed, and every one of them has a successor experiment that exists because of it. Nothing in this lab worked the first time.

Negative 01

Our own ceiling claim was wrong for six days, in three documents

We wrote that a linear brain "cannot represent attack-if-smaller-AND-hungry." AND is linearly separable; one head fits it exactly. Our own exam falsified our own claim before we had built anything on top of it.

The correction is left visible in every document that carried the error, rather than quietly edited out — because a sentence cannot be wrong out loud; a function can.

corrected 2026-08-25 · the error stands in the record
Negative 02

The species said no

Separately founded lineages do grow measurably incompatible — hybrid viability falls 0.144 → 0.232 over three hundred generations against a control holding near 0.50. That is the Dobzhansky–Muller signature and it is real.

But splitting one shared population produced nothing, at any age we tried. Isolation amplified a founding difference; it never created one. We went looking for speciation and found its precondition missing.

finding 2026-08-21 · 2026-08-22
Negative 03

The decay deadline was thirty times too short

Pre-registered: a costly-but-useless trait halves within 6,000 ticks. Result: 0/8. The autopsy is embarrassing and simple — a generation is about 4,600 ticks, so we had demanded dozens of generations of change in 1.3 of them.

Run at an honest length: 8/8, traits collapsing to under a tenth of their founding value. The failed registration stands in the record beside the pass.

decay_trajectories.csv · 8 seeds × 140,000 ticks
0.003 0.045 0.088 0.131 0.173 2,000 36,500 71,000 105,500 140,000 TICK SMELL GENE seed 0
Eight seeds losing a sense they no longer need. The smell gene falls from about 0.15 to 0.008 — five per cent of its founding value — across a hundred and forty thousand ticks.

There is no plateau and no knee: the mean declines in 68 of 69 intervals, and by sixty thousand ticks it is already at 43% of where it started. Individual seeds vary — the flattest holds near 90% of its own founding value out to forty thousand ticks before joining the decline — but none of them has a plateau at the scale the aggregate was once said to show. An earlier version of this caption described the curve as flat for sixty thousand ticks before a collapse. That was wrong, and the file plotted above is what disproves it. It is left recorded here because this was the one claim on the page that was a shape rather than a number, which is exactly how it got past a check that only tested numbers. Plotted from decay_trajectories.csv.
Negative 04

We blessed a world we never ran through its own winter

The hard world passed every check at 20,000 ticks. Its first deep winter arrives near 45,000, where night length multiplied by metabolic load crosses a survivable ceiling. 8/8 populations extinct, on schedule.

The commissioning battery for that world is red as this page is published, and the next experiment exists because of it.

winter_arithmetic.csv · analytic, so the curve is exact
1.04 2.07 3.09 4.12 5.15 40 80 119 158 198 NIGHT LENGTH (TICKS) ENERGY overnight load kills the unstored kills everyone
The winter arithmetic. Overnight load against the two ceilings: the lower kills anything without stores, the upper kills everyone. Load crosses the unstored ceiling at a night length of 90 ticks — verified against the array rather than taken from the write-up. The gap between the curves is the pantry's headroom, and the reason the next door to try is deep storage.
Negative 05

Roxx — an entire lab, as one negative

Four consecutive notebook entries in the market lab were findings about the measuring instrument rather than about the animals. Seven hundred and twenty-six generations moved its key evolved parameter by +0.0015.

We closed it. A market is not an antagonist — it does not adapt to you, so it cannot be the opponent an evolutionary lab needs. Its lessons are cited in every measurement designed since, which is a better afterlife than most projects get. Closing a lab is a result.

roxx · 5 entries · closed 2026-08
Negative 06

Judgment day — the door was open and nobody got through

The failure above set up the obvious question: can a population discover deep storage — a gene founded at zero, reachable only by mutation — in the generations before its first winter? It was designed, pre-registered, and run.

0/16. Every world died, and they died before winter even arrived. The autumn ramp outpaces evolution: these organisms get three to five generations per season where nature works with thousands. The door was not shut. There was simply never time to walk to it.

The next design question is whether geography — latitude refugia, somewhere that stays survivable while the rest of the world freezes — rescues what time cannot. That is a question, not a plan; it has not been chosen yet.

photosim · ran overnight 2026-08-29 · sessions/2026-08-29.md — a notebook entry, not a result file · no fix chosen

First light

The producer world's opening four thousand ticks, regenerated from the exact founding physics rather than transcribed from a write-up.

65,536 81,920 98,304 114,688 131,072 0.000 1,000 2,000 3,000 4,000 TICK GAS UNITS CO₂ O₂
The Great Oxidation Event, on tick one, untold. Carbon dioxide falls 131,072 → 99,395 while oxygen rises 65,536 → 99,338, as 200 founders become 38,038. Nobody wrote a rule about atmospheres.

The founding row is worth a moment: the world is 64 × 64 × 32 = 131,072 cells, seeded at exactly 1.0 carbon dioxide and 0.5 oxygen apiece. So row one of the array is the world's initial conditions made visible, and a reader who divides gets those constants back exactly. Plotted from first_light_gases.csv.

Still open

Watch a world

Three recorded worlds, replayed in the browser. Each is self-contained — the replay data is embedded, no library is loaded, and they run offline. All three are records of the v0 physics of 2026-08-17/18, and are history rather than the current world.

← Back to the lab