Method

How a result has to be earned before we call it one. Counts below are read from the registry at build time.

441registry events
237trials
72screens
38families
82verdicts
9sealed slices
2sealed openings
6forward logs

Pre-registration

A study is a frozen folder: a written specification (hypothesis, data, the full grid of variants, costs, the decision rule) and the strategy code, both hashed. The family is registered before any return is computed; the grid fixes how many variants count against it, and every variant is logged, winners and losers alike. A study is never edited after its result: it is rerun from the commit that recorded it.

Hash-chained registry

Every event (family, screen, trial, verdict, sealed opening, forward start) is one line of an append-only file. Each line carries the hash of the line before it, the code commit and whether the tree was clean, so a deleted or rewritten line breaks the chain. The head hash is committed to git; it is printed in the footer of every page.

Sealed holdouts

Data after (or before) a development span is cut into sealed slices that no study can read directly. A slice opens only through the registry, once, and the opening is itself an event: a second look is impossible to hide. Sealed tests so far: 2, verdicts KILL, KILL.

Costs, stressed

Every result is computed at modelled costs and again at double costs. The first check on any screen is the cheapest one that kills: gross edge against the round trip cost. Screen floors (fixed before the screen is run):

Claim tiers

Evidence is an e-value: a sealed-slice p-value calibrated into an e-value, multiplied by the forward log's running e-process; the anytime p-value is one over the largest e-value seen. A forward log also bets against itself and kills its family when that bet grows twentyfold. Tiers (fintech.claim, read at build time):

Silver needs all of:

Gold needs Silver plus:

No study has reached Silver.