family tree — run run_20260714_015948

the same family tree twice, one row per generation, candidates ordered best→worst. The LEFT column speaks the gallery chart’s performance language: gray = candidate, black = best-so-far, red × = invalid, accent ring = the run champion, purple halo = claude-designed. The RIGHT column speaks the breeding language: neutral nodes, operator-colored edges, a gold caret for immigrant injections, purple rows for claude designer rounds, teal dashed rules for pivot generations. Edges rest muted in both columns — hover any node on either side to light its full ancestry in both, click to pin (esc releases). Node size everywhere: large = born that generation, small = elite carried over.

performance — who’s good
g0 g1 g2 g3 g4 g5 g6 g7 g8 g9 g10 g11 g12 g13 g14 g15 g16 g17 g18 g19 g20 g21 crossover pivot designer mutation immigrant elite carry-over seed cmaes best so far
candidate / best so farnode status
Performance column only: GRAY nodes are evaluated candidates, BLACK nodes set a new best-so-far when evaluated -- the gallery chart's exact dot language. The breeding column keeps every node neutral on purpose.
invalidred ×
Invalid design (performance column): it violated a hard constraint (tongue collision, stack fit, rotor clearance, structural failure...) or failed a flight scenario -- the gallery's red ×. Fitness = infinity; never selected as a parent.
championchampion ring
The accent ring is the RUN CHAMPION -- the lowest aggregate Wh/km of the whole run, the gallery's red-outlined card (performance column).
claude-designedclaude-designed
Claude-designed: proposed by a designer round (opening, scheduled, or pivot), born from a prompt rather than parents -- so it has no incoming edge; the purple halo is its mark, the same purple the gallery uses. Carried-over copies keep a thinner halo.
node size = born / carriednode size
Large node = the candidate was BORN in that generation. Small node = an elite carried over unchanged, shown again in a later generation's population. Applies in both columns.
breeding — how they were made
g0 g1 g2 g3 g4 g5 g6 g7 g8 g9 g10 g11 g12 g13 g14 g15 g16 g17 g18 g19 g20 g21 crossover pivot designer mutation immigrant elite carry-over seed cmaes best so far
crossovercrossover
Simulated Binary Crossover: the child's genes are sampled around its two parents' values (closer for higher eta) -- the digital analogue of breeding two good frames.
pivotpivot
Patience exhausted: after 6 generations without a >=0.5% improvement, children are bred from a tournament winner and a FAR parent (the most genetically distant still-decent candidate in the run's history) under boosted mutation, to break the plateau.
claude-designedclaude-designed
Claude-designed: proposed by a designer round (opening, scheduled, or pivot), born from a prompt rather than parents -- so it has no incoming edge; the purple halo is its mark, the same purple the gallery uses. Carried-over copies keep a thinner halo.
mutationmutation
Gaussian noise on a subset of genes. Its sigma decays per generation, so early search explores and late search fine-tunes.
immigrantimmigrant
A fresh random genome injected (~10% of non-elite slots) to keep genetic diversity from collapsing. No parents, so no edge -- the small gold caret above a node marks the injection.
elite carry-overelite carry-over
Elite carry-over: the top candidates pass unchanged into the next generation so the best design can never be lost. The dashed line follows one candidate surviving; it reappears as a SMALL node in the later row.
seedseed
Generation 0: the real Source One V6 baseline plus random genomes -- no parents.
cmaescmaes
Sampled from CMA-ES's adapted Gaussian (the flag-gated alternative optimizer). No discrete parents; provenance is the distribution's mean and sigma.
purple row = claude roundclaude generation
A light purple row means a Claude designer round shaped this generation -- the same purple band the gallery chart shows; the g-label carries a purple ✦. The round's prompt and proposals are in the gallery's generation panel.
pivot generationpivot generation
A teal dashed rule above the row (and ⟳ on the g-label) marks a pivot generation: patience ran out and half the non-elite slots were bred with far parents under boosted mutation.
node size = born / carriednode size
Large node = the candidate was BORN in that generation. Small node = an elite carried over unchanged, shown again in a later generation's population. Applies in both columns.

The same graph is exported as Graphviz DOT (lineage.dot) and raw SVG (lineage.svg); ancestry of any candidate: airloom lineage <hash>.