← back to the playground

THE NERD CORNER

Everything that is actually true about $NOBACKSIES, including the parts that are inconvenient. If anything on the front page seems to promise more than this page does, this page wins.

You can sell any time the pool is trading. It is the liquidity that is locked, not your tokens — but see who can change the rules.

What Jarold actually is

A pool with a ratchet

Strip the cartoon off and there is one mechanism here. A normal AMM collects a fee on every swap and parks it in a balance somebody can later claim. Jarold’s pool is set to compounding mode, so the pool’s share of that fee is added back to the liquidity itself — and the LP position holding it is permanently locked, so in the current program there is no instruction anyone can call to take the liquidity back out. Our fee share is a separate thing, claimed from the position rather than withdrawn from it, and Meteora takes its protocol cut before either of us sees anything.

Together those two settings make pool depth a one-way function:

in
every swap, forever
out
no liquidity, for anyone, ever

Compounding mode is Meteora’s feature, not ours. What is unusual is pairing it with a full permanent lock — normally fees are compounded so that someone can eventually withdraw a bigger position. Removing that exit is the whole idea.

Where every fee goes

phaseMeteorainto the poolto us
bonding curve20%nothing80%
after graduation20%40%40%

Measured, not assumed: protocol_fee_percent reads 20 on all 8,835 Compounding pools on mainnet — a census, not a sample. Reproduce it with node src/record-chain-evidence.js; the slot, the program hashes and the exact query are recorded in launch/evidence-chain.json. Our 40% works out to 0.40%–0.48% of volume; traders pay 1.00%–1.20%. The spread in both is the volatility fee, which is split the same way as the base fee. During the curve phase nothing compounds — compounding only exists in the graduated pool.

What that actually does

Meteora adds the compounded fee to the pool’s SOL only — never to the token side. The pool holds more SOL against the same tokens, so the price rises. It does not make a sell-off hurt less: how far a dump moves the price depends on the token side, which never grows.

round-trip volumeSOL in poolpriceto us2% dump
at launch110 SOL1.00×0 SOL−18.8%
5,000 SOL129 SOL1.17×20 SOL−18.8%
25,000 SOL206 SOL1.88×100 SOL−18.8%
100,000 SOL500 SOL4.56×398 SOL−18.8%

Equal buys and sells, no net buying. A pool that pays all its fees out ends every row at 110 SOL and 1.00×. The “to us” column is our 40% of the fee — 0.40% to 0.48% of volume, the range being the volatility fee — and we would rather print it than have you find it. The dump column does not move: a fuller jar is not protection. Assumes the pool keeps 80% after Meteora’s cut, which we have not measured, and the pool’s SOL still falls if people are net sellers.

Fill the jar (toy model)

Volume as a multiple of the starting pool.
Percent of total supply sold at once.
JaroldHypothetical: a pool that keeps 0.20% per tradeFees leave the pool

Jarold's honesty corner

What the model shows

  • Fees that stay make the pool deeper. Same trades, bigger pool. Run it yourself above.
  • The same volume leaves the pool richer. 5,000 SOL of round-trip trading leaves 129 SOL in the pool against 110 SOL in one that pays all its fees out.
  • Jarold fills faster than a pool that pays its fees out — under this model’s assumptions, which we picked. It is a sketch of the mechanism, not a forecast.

Jarold will not promise

  • That nobody is paid. Of every fee after graduation: 20% to Meteora, 40% compounds into the pool, 40% claimable by us — that is 0.40% to 0.48% of volume, while traders pay 1.00% to 1.20%. During the bonding curve it is 20% to Meteora and 80% to us, with nothing going into the pool. The liquidity itself stays locked and we can never withdraw it. We are not pretending this is charity; the numbers are above.
  • That you can’t get dumped on. At graduation about 82% of the supply is held by curve buyers and only 18% sits in the locked jar. The lock stops the jar being emptied; it does nothing about that 82%. Someone who buys early and sells later is selling into the jar, not taking it.
  • That one wallet can’t do it alone. The whole curve graduates on about 122 SOL, and nothing in Meteora’s program caps a single buyer — one wallet can fill it in a single transaction. The amount-based fee limiter that would price that in is deprecated and unavailable to new launches.
  • Number go up. Nobody knows that. Anyone who says they do is lying.
  • A stable price. A fuller jar does not make dumps hurt less, and it does not stop them. The fee lands on the SOL side only, and a dump's size is set by the token side.
  • That people will trade. Higher fees scare some bots off. The sim doesn't model that.
  • That the early fee stops snipers. It taxes their stake, not their size. A 15 SOL buy in the first block still clears a large profit on the way up. Nothing available in the program caps a single buyer.
  • That compounding can never be switched off. See who can change the rules — a single Meteora key can change the split after launch, and we cannot prevent it.
  • That the whole fee compounds. Meteora's protocol cut comes out first. We compound half of what is left (compoundingFeeBps 5000) and claim the other half. The measured protocol cut will be published after devnet.
  • That fees compound before graduation. Compounding only exists in the DAMM v2 pool. On the bonding curve itself, fees go to a fee claimer — the chain has no way to route them into the curve. We will publish that address before launch.

How Jarold gets built

  1. Bonding curve launchMeteora's Dynamic Bonding Curve sells the first tokens from a 1B supply. No custom contract to audit.
  2. Authorities burned at mintMinted with tokenAuthorityOption: Immutable, so there is no mint authority. We verify mint, freeze and metadata authority are all null on devnet before launching.
  3. Fee opens at 10%, decays to 1%Exponential, 60 steps over the first hour. These fees do not go into the jar — compounding only exists after graduation, so curve-phase fees go to our fee claimer. The earliest buyers pay us the most, not the pool. It is a tax on early entries, not a cap on them; Meteora’s amount-based limiter is deprecated and unavailable to new launches.
  4. Graduate into a compounding poolA DAMM v2 pool at 1% base fee (plus up to 0.19% volatility fee) in compounding mode, so the pool’s share of the fee is added back to liquidity.
  5. Lock 100% of liquidity, permanentlyNot vested, not timelocked — permanent. Nobody can withdraw the liquidity, us included. We do claim a fee share from that position, which is a separate thing and is in the table above. Meteora’s own programs are upgradeable and its operators can still retune a live pool, so the code reading our config can change even though the config cannot.
  6. Test on devnet firstEvery parameter above passes the SDK's own validator today. None of it has been run on devnet yet — it will be graduated and claimed from on devnet before anything goes live. See the gate below.

Who can change the rules

Everything on this page is true under the programs as they are deployed today. Those programs belong to Meteora, not to us. Here is exactly who can change what, and what nobody can change.

Meteora can upgrade both programs

The bonding-curve program and the pool program are both upgradeable by a single upgrade authority, JADaUV8kvDpDbJr55wxXJHVaBS3VCj8thZZHjfeuCVLd — read straight from each program’s ProgramData account and recorded in launch/evidence-chain.json. It is an off-curve address, so a program-derived account rather than a plain keypair. (We previously called it a 4-of-7 multisig; we cannot decode that account with the tools here, so the threshold claim is withdrawn.) Whoever controls it can replace the code that enforces everything below. “Forever” on this page means forever under the current programs.

One Meteora key can change the compounding split

The 50/50 split is compounding_fee_bps, which becomes ordinary pool state at migration. A single Meteora admin key can rewrite it with one signature, no program upgrade, no multisig vote, no timelock. Said plainly: if it were set to 0, the whole LP fee share would become claimable by us instead of staying in the pool. We would not have to do anything for that to happen, and we cannot prevent it. It is set by us at launch and changeable by Meteora afterwards.

One Meteora key can pause trading

A single operator key can set the pool’s status to disabled. While a pool is paused, nobody can buy or sell — that is why the front page says you can sell any time the pool is trading rather than simply any time.

Our fee share is transferable

The right to claim our 40% lives in a position NFT, and that NFT can be moved. We could move or sell the right to claim it. The liquidity stays locked no matter who holds it — a new holder inherits the fee stream, not the capital.

What nobody can do — including us, and including those keys

Withdraw the locked liquidity. The lock is meant to be enforced by the program itself rather than by convention — but we are not publishing a number for it here, because the simulation that would establish it is not yet reproducible from this repository. It is recorded as lockEnforcement: NOT RUN in launch/evidence-chain.json, with the exact method written out, and the launch gate refuses to pass until that script has run and recorded its output. Until then, treat this as a design claim and not as a measurement.

One honest nuance: split_position can move permanently locked liquidity to another position, where it stays permanently locked. It cannot withdraw it. The locked LP is immobile as capital but transferable as an asset.

Before it can launch

The devnet gate

One run settles every remaining unknown. None of it has been done yet.

  • Launch on devnet with the exact mainnet config — 100% permanent lock, Compounding, 5000 bps
  • Trade the curve to graduation and migrate the pool
  • Confirm the position NFT owner is the fee claimer, and the pool’s collect fee mode is Compounding
  • Confirm the mint has no mint authority and no freeze authority
  • Claim a fee from the locked position through the real custody wallet
  • Confirm removing liquidity fails — the only direct proof the lock is enforced rather than assumed
  • Record the pool’s real protocol fee percent; the 80% used above is an assumption
  • Confirm whether the dynamic / volatility fee is split and compounded like the base fee, or handled differently

A census of every Compounding pool on mainnet finds 1,121 of 8,835 (13%) using a permanent liquidity lock. An earlier version of this page said a 41-pool sample found zero; that was wrong, and the census replaces it. We check the permanent-lock setting only, not vesting or time locks, so the claim is about permanent locks and nothing else. The combination here is uncommon rather than unheard of — still its own risk, and still the reason the gate exists. Reproduce with node src/record-chain-evidence.js.