cuckoo

Robinhood Chain / blocks every 0.1 s

Land on the block you choose.

Sign an egg with a window of blocks. Keepers near the chain carry it and race to land first inside it; the contract refuses anything outside your window and pays the keeper that lands closest. No fast hardware on your side.

no owner, no feewindow enforced on chainchecked on the real chain

Aim at a block

Target block+8
Window3 blocks
Sender

The problem

Timing is a race against your own network.

A transaction cannot be told to wait. The chain includes it as soon as it can, and on a chain with blocks every tenth of a second, a few milliseconds of delay is a different block.

10blocks per second, measured on the real chain

Blocks are short

One block lasts about 100 ms. The delay of a phone, a wifi or a browser is bigger than that.

0ways to tell a transaction to wait

The chain cannot hold it

It can only refuse a transaction that comes too early. That is exactly what a window does.

12 sthe block number Solidity sees on this chain

The clock is a trap

block.number here counts Ethereum blocks. Cuckoo reads the chain's own counter.

The idea

Someone else lays the egg.

You sign an egg: a call, a window of blocks, and the most a keeper may earn. You do not send it. Keepers, who sit close to the chain, race to carry it.

  1. The contract refuses it before the window and after it. Owner pays nothing.
  2. The keeper is paid from your escrow, more on the first block, less on each later one.
  3. So keepers compete on precision, and you are the one who benefits.

How it works

1 YOU SIGNan egg:call + window+ max reward keeper Aclose to chain keeper Bfurther away keeper C 2 KEEPERS RACE 3 THE CONTRACT before N refusedblock N 100 %block N+1 75 %after M refused paidby block

Race lab

Same window. Who lands where?

Compare a plain transaction from a phone with an egg carried by one keeper, or several racing. Every assumption is a slider, and printed. It is a model, not a measurement.

Proof, not promises

Checked on the real chain.

Nothing is deployed and no transaction is sent. The script injects the contract into the live chain, reads its real clock, buys on a live Pons curve, and watches the chain refuse eggs outside their window, tampered with, or already carried.

15contract tests
800random eggs, JS vs contract
10blocks / s measured

How it is checked

$ node scripts/real-chain-check.mjs chain 4663 block 85989216 (Robinhood Chain, Nitro v3.12) Solidity block.number 26,170,542 the Ethereum number ArbSys block number 85,989,226 the chain's own counter, read by Cuckoo 10 blocks in 1,380 ms through a public RPC live Pons curve 0x91DfC3...c385 NOMINAL egg inside its window, real buy on the curve ........ ok WINDOW not open yet ........................................ TooEarly already over ........................................ TooLate ORDER recipient swapped by the keeper ..................... BadSignature reward raised after signing ......................... BadSignature MONEY egg already carried ................................. Used no escrow behind the egg ............................ Insufficient nothing deployed, nothing sent

Versus the usual ways

Why not just send it faster?

Send it yourself, fastA bot you runCuckoo
Hardwareyours decidesa server, a node, your timenone on your side
Lands before the windownothing refuses ityou wrote the check, or notrefused by the contract
Who competesyou, against botsyour one botkeepers, for your reward
Who can change the ordernobodyyour botnobody, it is signed
Your fundsin your walletin a hot walletescrow, withdraw anytime

One minute

See it first.

The race, the window, and the chain saying no.

Read this part

What it is not.

Not "exactly block N". The sequencer decides. Cuckoo enforces your window and pays for being early in it. Real precision is measured with cuckoo measure; the lab above is a model.

Not private. Keepers read your egg to carry it.

Not audited, not deployed by us yet.

All limits and risks