Fifteen articles, and nobody is paid in any of them. Every figure of the protocol below reads set at deploy: it is a constant of the deployment, printed here and on the explorer, with no setter for any of it. The toy on the front page runs the same rule on its own numbers, and says so wherever it shows one.
A box is two numbers: an anchor and a half width, both in ticks. The anchor is the tick at which the last box opened. The half width is fixed at deployment and is the same for every box, for the whole life of the pool.
The price is inside its box while it is strictly between the two rules. A price on a rule has left: touching counts.
The box is drawn by a rule around a past price. It is not a signal, it does not predict anything, and this site never calls an opening a breakout.
02The crank
001One block inside the box · one turn
The crank counts the blocks since the box was drawn. Nothing runs and nothing is stored while it counts: the turns are computed from the block the box was drawn at, so a box that nobody touches for a day costs no gas for that day.
One block inside the box is one turn. A block in which the price leaves is not a turn: it is an opening.
03The stop
set at deployWhere the crank stops counting
The crank stops counting at a fixed maximum, set at deployment. Past it the turns stay where they are, however long the quiet lasts, and the share stops growing with them.
The stop exists so that the largest possible burn is knowable in advance, from the cap of the curve, rather than from how long a market can sit still.
04The toll and the reserve
1way in · the tolls1way out · the dead address
Every swap pays a toll, a fixed share of its size, the same for a buy and for a sell, set at deployment. The toll is the only income of this protocol.
It goes into the reserve. The reserve has one way in, the tolls, and one way out, the dead address, when a box opens. No owner, no withdrawal, no setter, no destination that can be changed.
05The share
The share of the reserve a box burns is a concave function of its turns, published as an exact integer formula. Zero at zero turns, exactly the cap at the maximum, and never the whole reserve.
share = cap × turns × (max + bend) ÷ ((turns + bend) × max), rounded down
Concave, so the second hour of quiet adds less than the first. The reserve and the share grow together during a long quiet stretch, which is why the burn at the end of one is large twice over. That is the product, and it is the reason the crank is worth watching.
The curve below is the toy's own, on this page's numbers: a cap of 50 %, a bend of 50 turns and a maximum of 100. The deployed ones are printed here at launch.
The ten marks of the curve
Turns of quiet
Share of the reserve
What it adds over the line above
06The opening
+1To the box counter, in the block that left the box
At the end of every swap the hook compares the pool's tick with the box. If the tick is outside, the box opens in that transaction: the share buys $COIL on the pool and sends it to the dead address, the box counter goes up by one, and a new box is drawn around the tick at which the swap ended.
Not queued, not claimable, not announced. Done, in the block that left the box.
07The order inside it
The order of operations inside an opening matters, so it is written here:
The toll of the swap goes into the reserve.
The tick the swap ended on is read, before anything of ours moves the price.
That tick is compared with the box.
If it is outside, the turns are counted, the share of the reserve is bought and burned.
The new box is drawn around that same tick, not around where our own buy left the price.
5Steps inside an opening, in this order
Otherwise the protocol's buy would move its own anchor, and a burn could open the next box by itself.
08Up and down are the same
A box that opens upward and a box that opens downward burn the same share for the same turns. The direction is recorded and changes nothing.
This site never colours the two differently, and the toy leaves each way out to a coin toss.
09Nobody is paid
nonePaid for opening a box, to the trader or to anybody
The swap that leaves the box pays the same toll as any other and receives nothing. No finder's fee, no rebate, no share of the reserve, no rank in a table.
It is not a prize, so it is not a race, so there is nothing for a sequencer to sell. The team's share of the toll, of the reserve and of anything else this protocol touches is none.
10No owner, no setter
There is no withdrawal from the reserve, no destination that can be set, no pause, and no setter on the half width, the maximum turns, the curve or its cap.
What the contract cannot do is the point. A reserve that has been filling for a week is only worth watching if nobody, including us, can reach into it.
What the contract cannot do is the point.
11Rounding
Tolls round up. A toll is never short by a fraction of the smallest denomination.
The share rounds down. A box never burns more than the curve says.
Dust burns. What rounding leaves in the reserve stays in the reserve, for the next box.
12What the contracts enforce
Coil · Fixed at deployment ·no setter
I 1A box opens only when a swap ends outside it, and by no other means.
I 2The share burned is a pure function of the turns of that box and of constants fixed at deployment.
I 3The reserve leaves only as burned $COIL, and only at an opening.
I 4Upward and downward openings are identical in every consequence.
I 5No address has any right over the reserve, and no address is paid for opening a box.
I 6The half width, the maximum turns, the curve and its cap are fixed at deployment and have no setter.
13What can go wrong
Somebody opens the box on purpose.They can, at the cost of the toll and of the price impact of moving the pool by half a box, and what they get is a burn that belongs to everybody. After a long quiet stretch it is even likely.
Half a box, for the toll and the price impact
A wick outside, and the arbitrage that brings it back.The box opened; that is the rule. The new box is drawn where the swap ended, and the price coming back leaves that new box too if the wick was long enough, with a crank of a few blocks and a share near zero. It is stated rather than papered over with a confirmation delay that would make the rule harder to say.
The half width is wrong.Too wide and the lid never opens; too narrow and it never stays shut long enough to matter. It is the one number that decides whether there is a product, and it is simulated on real traces before it is set.
A dead market.The crank reaches its maximum and stops, the reserve sits full, nothing burns. It is the honest failure state, which is why this site shows the turns and the reserve and not only the total burned.
Stopped at its maximum · nothing burns
Somebody reads the box as a signal.It is not one. The box counts how long nothing happened.
It counts how long nothing happened
14Parameters and venue
Coil · Uniswap v4 · Robinhood Chain 4663
Half width
Half the width of every box, in ticks
set at deploy
Maximum turns
Where the crank stops counting
set at deploy
The curve
Its shape and its bend
set at deploy
The cap
The largest share a box can burn
set at deploy
The toll
The share of every swap that goes to the reserve
set at deploy
Paid for opening a box
To the trader, to anybody
none
The team's share
Of the toll, of the reserve, of anything
none
Chain
Robinhood Chain, its own pool on the PoolManager
4663
Venue
Uniswap v4, a hook of ours working in afterSwap
own pool
Price
The pool's own tick. No oracle, no feed, nothing off chain
the pool
Liquidity
Protocol liquidity locked, third party liquidity refused
locked
5set at deployFigures of the deployment, no setter for any
For builders
The app reads the box from the hook by a short list of view names and says which one answered. The four byte selectors are printed in js/pool.js beside their signatures, and the list of names is the only thing that changes if the deployed hook spells one differently.
15Questions
1What do I get for opening the box?
Nothing. You pay the same toll as every other swap and receive nothing at all. The burn belongs to everyone holding the token, which is the only reason there is nothing to race for.
2Can I open it on purpose?
Yes, by moving the pool past a rule. You will pay the toll and the price impact of that move, and the reserve will buy $COIL and burn it for everybody. After a long quiet stretch somebody probably will, and that is the mechanism working.
3Is a box that opens upward better than one that opens downward?
They are the same. Same share, same burn, same new box. The direction is recorded and changes nothing.
4What happens if the market goes quiet for a month?
The crank counts to its maximum and stops. The reserve keeps filling with tolls, and the share stays at the cap. Nothing burns until a swap ends outside the box.
5Why not burn every toll as it arrives?
Because then there is nothing to watch and nothing to wait for. The box turns a constant drip into one event whose size everybody can read in advance, and whose timing nobody controls.
6Does the burn's own buy open the next box?
No. The new box is drawn around the tick the swap ended on, before our buy moves the price. Article 7.
7Can the team empty the reserve?
There is no function to do it. No withdrawal, no destination that can be set, no pause, no setter. Article 10.
8Is the toy on the front page real?
It is real arithmetic on made up volume. It runs the rule of this page, in full, on this site's own numbers, and its blocks are slower than the chain's so that the crank can be heard. There is no contract yet.
9Where will the contract address be published?
Here and on X, in the same minute, and nowhere else. Any address that reaches you any other way is not ours.
10What is left to decide?
The half width, the maximum, the curve, the cap and the toll. They are simulated on real traces from this chain's pools, and published before anything is deployed.