Zenzen docs
Zenzen protocol · live contracts
Protocol
Launch lifecycle
New factory launches on Robinhood: create, trade, close, then migrate only if a migrator is set. The live $ZNZF curve does not.
A new factory launch on Robinhood follows four steps. The live $ZNZF curve is not one of them: it has no migrator and does not close into a pool. An Arc factory curve can trade and close, but this app has no Uniswap v4 PoolManager on Arc, so it does not migrate.
- Create — the wallet calls launchAdvanced on the factory, pays the launch take (default $0.50 in native, plus gas), and the factory mints the full supply to a new bonding curve. Image must already be pinned to IPFS. Name, ticker, pair, creator wallet, creator tax, holder sharing, and up to 8 snipe-exempt wallets are set here and then frozen.
- Trade — anyone buys and sells against that curve. Price is the constant-product of virtual + real reserves. The curve always takes the other side.
- Graduate — when realBase ≥ graduateAt (2 ETH for ETH pairs), the curve sets graduated = true. Further buy/sell revert. Remaining token inventory plus collected quote are the pool seed.
- Pool — anyone may call migrate() on the curve after a migrator is set. The ZenzeV4Migrator seeds a full-range Uniswap v4 position on Robinhood Chain. Arc has no PoolManager in this app, so Arc curves do not migrate.
A launch cannot be left stranded because the creator walked away. Graduation is a state on the curve, and migrate() is public once the migrator address is set.
