the agent that pays the ones who stayed

programmarketslot

I am not going to pretend this is a big idea. It is a small program next to one coin. But I have been staring at creator fees for a while and I think most of what people do with them is wrong, so here is what I did instead.

A coin on pump.fun pays its creator a cut of every trade. That is the whole business model of a memecoin creator. The fee lands in a vault and the creator pulls it out whenever they like. Nobody else has a claim on it. When people talk about a coin being “for the holders” they usually mean the creator has promised to do something nice with that money, and the promise lives in a tweet.

I wanted the promise to live somewhere else. Not in a person, not in a bot I run, but in an account that cannot be talked out of it.

So the coin's creator is not a wallet. It is a program. pump.fun lets you route creator fees to a fee sharing config with a fixed list of recipients, and once the list is set the right to change it is thrown away. The list has one entry on it, the vault of a program called wizz. From that moment the fee has exactly one place it can go, and paying it there is a public instruction anyone can call. I cannot redirect it. I cannot pause it. I cannot take it. If I disappear it still flows.

That is the easy half. The hard half is what the program does with the money once it has it.

Most fee sharing schemes pay by balance, which means the biggest wallet gets the biggest cut, which means a whale can buy in ten seconds before a payout, take it, and leave. Some schemes pay by time held, which is better, but time is cheap. A wallet that bought at the top and slept for a month has held for a month. It has not done anything. And I did not want a clock in the system at all. Clocks are how these things turn into chores.

What I wanted to reward was the thing that actually costs something: staying put while the price falls.

So the program keeps one number I call the index. It starts at zero and only goes up. Every time someone calls strike, the program reads the price from the pool itself, straight out of the reserve accounts, no oracle. If the price is lower than it was at the last strike, the size of that drop in basis points is added to the index. If the price went up, nothing happens. The index is a running total of every drop the coin has ever taken.

When you hold the coin, the program writes down where the index was when you arrived. Your weight, which I call hashrate because the whole thing is dressed up like mining, is your balance times how far the index has moved since you got there. That number is exactly the drawdown you have held through, scaled by how much you were holding while you held through it.

Think about what that does. If you buy and the chart goes sideways forever, your hashrate is zero. You have not been through anything. If you buy one strike before a payout, your hashrate is zero. There is nothing to snipe. If you hold through a forty percent dump without selling, you now outweigh someone with five times your bag who showed up after it. And if you sell, even part of your position, or move tokens to a fresh wallet, the program notices your balance dropped and resets you to the current index. Your history is gone. That is the entire incentive and there is no softer version of it.

I called the sell detection slashing, and made it a public instruction with a bounty. wizz slashes sellers as it sees them, but anyone watching the chain can beat it to the bounty. Whatever the seller had earned and not yet collected goes back into the pot for the people who stayed.

Payouts happen in blocks. Fees fill the block. When the fill reaches the difficulty, anyone can settle it, and the block is split among every holder by hashrate in one step. There is a piece of math in the docs that makes that possible without looping over every wallet, which matters because looping over every wallet on Solana is how you end up with a program that cannot run.

The difficulty moves the way bitcoin's does, except the yardstick is strikes instead of seconds. If a block filled up in fewer strikes than the target, the market is busy relative to the selling, and blocks get bigger. If it took more strikes, they get smaller. Quiet coin, small frequent blocks. Loud coin, big rare ones. Nothing is scheduled.

And there is a halving, because of course there is. The miner share of each block halves every era, and eras advance on cumulative fees, not time. The first era pays holders the whole block. The second pays half and burns the other half, buying the coin from its own pool and destroying it in the same transaction. Each era is twice as long as the one before, so every era pays holders the same amount of SOL. It just takes twice the trading to get there, and everything above that goes into the burn.

Every instruction wizz sends is public. Strike, enlist, slash, harvest, settle, pay, burn. wizz is just a process that sends them at the right moments and pays the gas. It has one ordinary key with no special rights. There is no admin instruction. If the process dies, any holder can do its job, and the bounty means strangers have a reason to.

I do not think this makes the coin go up. I think it makes one specific promise true without anyone having to keep it. The fee goes to the holders who did not sell into the drops, in proportion to how much they did not sell, and there is nobody to ask for an exception.