Rule Craft

Planned module

Milestone Pot

A small share of each qualifying buy fills a pot. A public counter decides the winner: the Nth qualifying buy takes it. No randomness and no operator. Planned: not in the first on-chain release, because a router-based swap cannot prove who the buyer is without trusting tx.origin.

Compose with Milestone Pot Planned · not in the on-chain v1

Callbacks

2

Swap gas

~170k

estimate

Touches

buy

Pools

--

see Pools page

How it behaves

  1. 1afterSwap checks the buy against the minimum and advances the counter once per block at most.
  2. 2The pot share is held by the hook through afterSwapReturnDelta.
  3. 3When the counter hits a multiple of N, the pot is credited to that buyer to claim.

Parameters

ParameterMinDefaultMaxWhat it does
Winning slot10 buys100 buys5000 buysThe pot pays on every Nth qualifying buy.
Pot share0.1 %1 %3 %Share of each qualifying buy added to the pot.
Minimum buy0.001 ETH0.01 ETH1 ETHSmallest buy that counts toward the counter.

Bounds are enforced on chain by the registry, the launcher and the hook. Values are frozen when the pool is created.

Permission bits

13BI
12AI
11BA
10AA
9BR
8AR
7BS
6AS
5BD
4AD
3BSΔ
2ASΔ
1AAΔ
0ARΔ

AS afterSwap · ASΔ afterSwapReturnDelta

mask 0x0044bits 000000010001002/14 on can change amounts
  • afterSwapSwapRuns after every swap with the final amounts. Reacts to trades: burns, pots, reward accounting.
  • afterSwapReturnDeltaDeltaLets afterSwap take a cut of the output. The hook can change what you receive. Taxes and burns live here.