Kilnpad

Robinhood Chain

On chain

  • Kilnpadnot deployed
  • Fluenot deployed
  • Saggernot deployed

Nothing is deployed yet, so there is nothing here to read. The addresses fill themselves in.

Inside the kiln

Four contracts, and what each one is for.

This page explains the mechanism. It quotes no figures, on purpose — the supply, the split, the fee at the door and the fee on swaps are constants in verified source. That is where they bind, and where they cannot be quietly rewritten or rounded for a screenshot.

Kilnpad

the kiln

It takes the fee at the door, mints the token, splits the supply, opens the pool, seals the pool's share and records the firing. One transaction, four contracts, nothing left half-done: anything that can be refused is refused before the token exists.

Flue

the draw

A flue is the throat every draught passes through, and it takes a little heat off each. This one takes its cut of everything paid into a pool, either direction — buy with ETH and it comes out in ETH, sell back and it comes out in the token. All of it goes to that pool's supply wallet. One pool, one payee, written once and never rewritten.

Sagger

the box with no door

A sagger is the clay box ware is set inside before the kiln is lit. The pool's share goes in once, and there is no function in the file that gives any back — no withdraw, no collect, no owner, no pause, no upgrade. Search it for a negative liquidity delta; there is not one.

KilnToken

the ware

Fixed supply, minted once, split between exactly two addresses in its own constructor. No mint, no owner, no pause, no blacklist. Both mints are logs in the launch transaction, so who got what is a receipt rather than a claim.

The cone

Every firing opens across a price range, and the pool starts at the cheap end of it so the first buy fills immediately. The cone beside each token is how far the price has travelled through that range: upright means nobody has bought, bent over means the pool has worked through its whole range. It is a shape, not a quote — the price sits next to it, and the two ends of the range are in the contract.

A pool with no price is a pool nobody has bought from. It holds no ETH yet, which is not a fault: the whole position is still token until somebody trades.

Two fees that cannot reach each other

The launchpad earns once, at the door, in ETH, from whoever lights the firing — and it never holds that money: it is forwarded inside the same transaction. The token's supply wallet earns from trading, for as long as anybody trades. Neither can reach the other: where the door fee goes is an immutable in the kiln and appears nowhere in the flue, and a pool's payee is written once by the kiln and cannot be rewritten.

The flue takes no beneficiary argument at all, so there is no address in it for a deployment to get wrong.

What you are trusting, and what you are not

  • Not trusting: that the pool's liquidity stays put. There is no function to move it. That is a property of the file, not a promise from anybody.
  • Not trusting: that the rate stays the rate. A pool's hook is part of its key, so it is fixed when the pool opens. A different hook is a different pool.
  • Trusting: that whoever holds a supply wallet may sell. That share is liquid from the first block, and nothing here restrains it.
  • Trusting: that the code does what it reads like. It is not audited. Read it, or have somebody read it.

Where to check all of this

The three addresses in the rail, on the explorer, with their source published under MIT. Every figure this page refuses to quote is a constant there, and a launched token's own constructor arguments can be rebuilt from the chain alone.

Fire a token