01
Same inputs
Replay recomputes from the sealed inputs the run admitted: the same evidence, the same mandate, the same decision clock.
Kernel and contracts
Every domain module answers to the same seven contracts, in the same order, and every run ends in the same kind of receipt. This page is that contract surface: what each one holds, what it refuses, and what you can do with it. It sits between the worked walkthrough and the proof surface, and it does not repeat either of them.
A contract here is a typed agreement between the kernel and one part of a run. It says what may cross the boundary and what a refusal looks like. Nothing is passed as a loose shape that a later stage has to reinterpret, because a decision is only as trustworthy as the weakest binding in the chain that produced it.
The seven contracts are the same in every domain, and in every deployment state. The shipped effect adapter is simulation only, so an admitted act is simulated rather than performed; every other contract behaves as described here.
ScopeStructure here, results elsewhere
This page describes what each contract holds and what it refuses. What one run looked like belongs to the walkthrough, and what would falsify a claim belongs to the verification method.
Run order
Each contract hands the next one something narrower than it received. Open any of them to read what it holds, what it refuses, and what you can do with what it hands back.
Contract 1 of 7 · The subject of the run
The one thing a run is about, with the domain facts that identify it.
A market carries the identity of the subject and the typed facts the domain module declares for it: the field and its runners, the instrument and its window, the company and the question being analysed. The kernel gives that subject one identity for the whole run, so every later contract refers back to the same thing.
Refuses
What you can do with it
Contract 2 of 7 · One admitted fact
A fact with when it was observed, when it became available, and where it came from.
Observation time and availability time are separate and both required. The source identity travels with the fact, a content digest binds the evidence itself, and for priced markets a quote snapshot records the price that was actually reachable at the decision time.
Refuses
What you can do with it
Contract 3 of 7 · What the model concluded
A value, an interval around it, and the lineage that produced it.
Every model class emits the same shape of belief: a value, a lower and upper bound, the model and artifact identity that produced it, the inference receipt for recorded models, and the observation and source it was formed from.
Refuses
What you can do with it
Contract 4 of 7 · The authority to act
An objective, permitted effects, bounds, and an expiry.
The mandate states what may be done and up to what limit: the objective, the effects it permits, exposure or stake bounds, a confidence floor, an expiry, and the risk policy of the domain — ruin bounds where a stake is involved, capital risk where positions could be, analysis only where nothing may be executed.
Refuses
What you can do with it
Contract 5 of 7 · One typed outcome
An admitted act, or an abstention that names its reason.
A run ends in exactly one outcome: a specific act its mandate admits, or an abstention with a named reason — no authority, invalid authority, an expired mandate, a prohibited effect, confidence below the floor, an exposure bound, the domain risk policy, or the domain declining on its own terms.
Refuses
What you can do with it
Contract 6 of 7 · The effect record
One adapter call, one idempotency key, one receipt.
An execution binds the run it belongs to, the idempotency key it was requested under, and the receipt the adapter returned. The first call records the effect; an identical retry reads the same receipt back; a retry that conflicts with the recorded intent fails closed. Today the shipped adapter is simulation-only, so the receipt records a simulated effect and states that in its own encoding.
Refuses
What you can do with it
Contract 7 of 7 · Settlement and the lesson
The settled result bound to the exact run, with what was learned from it.
The resolved value settles against the run that produced the decision — and against the execution when one exists. Evaluation compares what was believed with what happened, and the learning record is written under the same lineage. A correction appends a new record and leaves the original readable.
Refuses
What you can do with it
One kernel, many domains
A domain module is where a domain’s knowledge lives: what counts as evidence there, what a belief means, what may be done about it, and how it settles. The kernel keeps everything else — the authority check, the replay, the effect boundary, and the settlement.
What a module adds
What a module can never add
Three modules ship today — sport and racing, quant research, and financial analysis — and each one arrives with the same kernel behind it. The domain reference lists what each module supplies.
Replay law
Replay is how a recorded decision is shown to be the decision those inputs produce. It is a recomputation, not a re-read of the answer that was written down.
01
Replay recomputes from the sealed inputs the run admitted: the same evidence, the same mandate, the same decision clock.
02
The model and artifact identity is part of the run, so a replay cannot quietly use a newer version.
03
The recomputed belief and decision have to match the record. A mismatch stops the run before anything downstream happens.
04
Replay makes zero adapter calls. It cannot place an order, take a wager, move funds, or deploy anything, and it can never become a second effect.
LimitWhat replay refuses
A replay that disagrees with the record, a model identity that cannot be resolved, or evidence that has moved since it was admitted all stop the run before anything downstream happens. No receipt is written for the differing run, and no adapter is reached.
NoteA retry is not a replay
An effect retry under the same idempotency key reads the original receipt instead of acting again. Reuse that key for a different intent, and the retry fails closed while the original receipt stands.
Adapter boundary
An act that a mandate admitted, replayed and verified, is the single thing that may cross into an adapter. Everything else stops before the boundary, and the boundary itself is the last place authority is read.
The crossing, in words
Sealed evidence forms a belief. A mandate admits or refuses what the belief would justify. If it admits, the decision is replayed and verified. Only then may the act cross into an adapter, under an idempotency key the receipt records.
The shipped adapter is simulation only. Its receipt says so in its own encoding, and no order, wager, transfer, or deployment exists in it: no broker, sportsbook, exchange, or provider is contacted, and no funds or accounts are touched.
The verification method lists what would falsify each claim made here, and the walkthrough shows the same boundary inside one worked run.
Why this shape
If evidence, belief, authority, effect, and settlement lived in separate services, every seam would be a place where the clock, the identity, or the authority could drift — and no single receipt would cover the whole run. One kernel keeps one identity from the first admitted fact to the learning record, checks every stage against that same run, and records each refusal at the stage that owned it.
That is also why there is no second decision path. Data can be distributed; the semantics cannot fork. A domain module, a model, or a deployment cannot decide differently about authority, replay, or settlement, because none of them owns those decisions.