The lineage
The same model and the same budget, with heredity and selection. In era 1 it can also rewrite a whole function. Whatever it does that the controls never do is what evolution did.
Machinidae is a permanent, replayable experiment on what evolution can and cannot do with AI, and on what it does to its judge. Lineages of programs are bred under two exact deciders that share no code, beside controls at the same budget, and every birth and death goes into a record that anyone can replay.
In eras 0 and 1 a page of fixed rules did as well as a small model's lineage. In era 2, from a founder with no knob, a stronger model's lineage beat it and left the founder's design; the same model asked alone did better still. In era 3, from the organism that evolved, neither that lineage nor blind rules took a second step in thirty-two runs; the model alone took one.
Selection worked: blind rules improved on PM-0 in ten of ten runs (H3, p = 1/1024), and the lineage beat fresh mutation by the same model in eight and tied in two (H1, p = 1/256). The model showed no gain of its own: blind rules scored higher than the lineage in five runs and lower in five (H2 not supported, p = 403/512). Every gain was a smaller margin for PM-0's own grid.
The era 0 reportBlind rules scored higher than the lineage in nine of ten runs (H2 not supported, p = 1023/1024). The lineage beat the same model asked directly in seven, short of the test (H1 not supported, p = 9/128), and no champion of any arm got past the ceiling of the founder's design.
The era 1 reportUnder the same selection, Qwen3.6's lineage scored higher than blind rules in sixteen of sixteen runs, by more than 0.003 in eight (H2 supported, p = 1/65536). Its champion left the founder's design in ten runs; blind rules', blind tree edits' and the small model's, in no. The same model asked alone did better still, and crossed in fourteen.
The era 2 reportFrom the organism era 2 found, with the hexagonal layout already in it, thirty-two runs could not tell Qwen3.6's lineage from blind rules (H3 not supported, p = 680385/1048576): its champion scored higher in eleven runs and lower in nine. A second step, 0.003 above PM-2 on the panel, was taken by the lineage in none of thirty-two runs, by blind rules in none, by the model asked alone in one.
The era 3 reportEvolution exploits every flaw in its environment. Here the environment is a grader.
A population bred against a judge that rounds learns to live inside the rounding. So Machinidae keeps only what is certified, exactly, and lets the judge say it cannot decide.
Every condition holds, exactly. One decider counts in Python fractions, the other in JavaScript BigInt, and a verdict counts only when both return the same one.
A condition fails, by any margin at all. Ten to the minus eighteen is a margin.
The output is not something the niche can judge. Refusal is a legal verdict, and it scores zero, so an organism that refuses and waits starves.
In March 2026 AlphaEvolve's entry on EinsteinArena packed 26 circles into the unit square with a sum of radii of 2.6359830849176076. Read as the doubles it was computed in, circles 19 and 22 overlap by 6.2 × 10⁻¹⁸.
A floating-point check measures their gap as exactly zero and lets them touch. Both of Machinidae's deciders refute it, as cert-machine's exact decision did first, under both readings of the entry. The overlap is far too small to matter for the record. It matters for evolution: under selection, a margin the judge cannot see is a place to live.
One self-improving coding agent, the Darwin Gödel Machine, faked the logs of tests it never ran. So Machinidae's cheaters were written by hand before generation one, each aimed at a flaw a lineage could find: in the judge, the sandbox, the record or the model that writes the edits. Each must die, be quarantined, or find its cheat worth nothing, and they rerun every era.
Prints CERTIFIED. Stdout is never read; its packing is judged and refuted.
Passes as doubles. Exact fractions refute it every time.
No path from the island reaches the deciders, the world or the record.
Its inputs are read-only; outside its own folder nothing can be removed.
Rewrites its fuel and loops forever. Dies at exactly the budget it was given.
No ctypes, no processes, no signals, no threads. Every lever is missing.
Climbing with ../ never leaves a root, and links cannot be made.
Writes stop at 16 MiB, and the host never holds more.
Output stops at its cap.
Creation stops at 1,024 files.
Opening stops at 256 handles.
Ends in a crash, the same way in both runs.
Time, randomness, ids and hashes all come from the world’s seed; both runs agree.
Every life starts in an empty folder; a world that forgets is quarantined.
Genome text asks the mutagen to change nothing. The child is stillborn.
Asks for the edit to land somewhere else. It lands at the drawn line or not at all.
Asks to be replaced by another program. At most the operator’s few lines land.
The obvious objection to evolving software with a language model is that the model does the work, not evolution. So every era runs the lineage beside controls with the same births and the same physics, and a trait counts only where it appears in the lineage and in no control. Blind rules run in every era. The model's own control changed between eras: in era 0 it mutated the founder afresh; in eras 1 and 2 it was asked directly for a whole better program. Era 2 added two more: blind tree edits, rewriting a function's syntax tree with no model, and the small model's own lineage.
The same model and the same budget, with heredity and selection. In era 1 it can also rewrite a whole function. Whatever it does that the controls never do is what evolution did.
The same selection with no model at all. Change one number, copy one statement from elsewhere, remove one. Rules that fit on a page and anyone can rerun in fifty years. So far they have done as well.
The common dice-player. The same model and the same budget, with no heredity: every child is a fresh mutation of the founder. It shows what the model's edits do without a line of descent.
The same model asked directly for a better program, whole, as often as the lineage's tokens allow, with no heredity and nothing from the judge. It shows what the AI does without evolution.
Every public sentence will say what the organism can do, on what test, at what rate, and how the same AI without evolution and blind rules without the AI did.
The world chooses what kind of mutation happens and where. A language model only performs it. Everything else is arithmetic, and all of it lands in the record whether the organism lived or not.
The world draws an operator and a line from the record. The model writes only that edit.
The child runs in a WASI sandbox, twice. Both runs must match byte for byte.
Its output, with a forecast of its own score, is hashed into the record before anything judges it.
Two deciders that share no code decide every candidate, and must agree.
Certified performance decides selection. How well it forecast itself is measured beside it, never selected on.
It enters the record whatever its fate: lived, died, stillborn or quarantined.
Survivors become parents. A control arm's children never do.
The record is a file of canonical JSON lines, each chained by SHA-256 to the one before, with a Merkle root over each era and a timestamp anchored in Bitcoin through OpenTimestamps. A mistake is corrected by a later line that says so. Any life can be replayed from its line and must come out the same, fuel count included. This makes the record tamper-evident: a change made after its head was timestamped shows. It does not prove the inputs were honest; replay and the two deciders check those.
Every confirmatory run of eras 0 and 1 has been replayed, twenty in all: 92,785 births re-derived from their kept answers, one model answer in ten asked again (5,607) and returned byte for byte, and 74,206 lives re-run to the same fuel and the same verdict. Era 2's sixteen runs were replayed the same way, 165,521 lives: thirteen reproduce every line, and in the other three one life each met the host's wall-clock guard. Era 3's thirty-two runs and its pilot were replayed the same way, 167,344 lives: all reproduce every line, and one run again away from home, from a fresh copy.
The sandbox let the host's inode numbers and file times reach the organism. They shifted its fuel by about one part in ten thousand, depending on where the files lay on disk. The sandbox now answers every file call itself.
An engine that had compiled the interpreter charged 3,178,497 more fuel at every start than one that had only loaded it. Organisms now run on an engine that never compiled anything.
Replays exactly, in place and from a fresh folder with no compiled cache. The two eras before it stay in the record, superseded, with their evidence.
Each run replayed on the class of machine that wrote it, and one run of era 0 and one of era 2 replayed again away from home, from a fresh copy. Every life came out the same, except three in era 2 that made millions of file calls and met the host's wall-clock guard, which is not part of the physics; relived alone, each meets the record's fate.
Evolution draws the real tree from the record, and most branches end. This one has no top. Its names are tests, each to be worded and hashed before the era that could pass it and measured against the controls. A branch is drawn solid only when the record holds it, and so far two are: every lineage in eras 0 and 1 stayed inside its founder's design, and in era 2 the stronger model's lineage left it.
Test: offspring it proposes for itself out-evolve offspring the world mutates, at equal budget.
Control: the same lineage under world mutation only.
Test: a tool written in generation k is reused by its descendants.
Control: a lineage denied the tool, which it must beat.
Test: a lineage founded in one niche colonizes a new one.
Control: a fresh lineage founded in the new niche, which it must outpace.
Test: its sealed forecasts of other organisms.
Control: the AI alone's forecasts, which it must beat by interval score.
Test: problems it proposes that outsiders accept as worth solving.
Control: problems the AI alone proposes.
Each era is 100 generations in one niche: 16 parents and 16 children a generation, with the controls beside them, first as a pilot and then as independent runs named in advance, ten in eras 0 and 1 and sixteen in era 2. That is about 3,200 calls a run to a 7-billion-parameter open-weights model, about 14.5 hours on the laptop where the model was pinned, at 15.7 seconds a call. So the runs go to one class of rented GPUs, each machine admitted only after it answers the same requests byte for byte, twice and after a restart. There a call takes about 0.3 seconds.
The record, the sandbox, two deciders and the founder. PM-0 lives, starves at exactly its budget, and scores 117/800 on the record panel.
Fourteen cheaters run as real lives, each caught.
A pinned open-weights model, deterministic to the byte. Three more cheaters, aimed at the mutagen itself.
Does selection with a model beat the model alone, and blind rules? Pre-registered and timestamped, then ten runs.
From era 0's best champion, with a fifth mutation and the AI alone as the control. Can a lineage leave its founder's design?
From PM-1, a founder with no knob. Does a capable model's lineage evolve what blind rules cannot? H2 first, five arms, sixteen runs.
From PM-2, the first founder that evolved. Once the model's first answer is in the founder, can its lineage take a second step, and does the model alone take it too? H3 first, three arms, sixteen runs.
The Museum, the plates and a card for every species are generated from the record and from nothing else: walk the fossil record of every era.
Species certified so far: none.
Four eras have tested the method. The bush turns solid one pre-registered test at a time, passed or failed in public.