Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.inkyswap.com/llms.txt

Use this file to discover all available pages before exploring further.

When a V2 token raises its target ETH, the curve closes and the remaining liquidity migrates to a Uniswap V4 pool with the InkyPump V2 hook attached. This is the bond event. It happens atomically in the transaction that pushes the cumulative raise over the target.

What gets created at bonding

The contract creates one new Uniswap V4 pool:
FieldValue
Token AThe launched token
Token BWETH (0x4200000000000000000000000000000000000006)
Fee0.1 percent (1000 in V4 fee units)
Tick spacing60
HookThe InkyPump V2 hook at 0x4cC8F6d5B7cE150CCC0A9B7664532B1283b96AC4
The pool is seeded with two things at creation:
  1. All ETH raised through the curve, paired with
  2. The liquidity supply of tokens computed by SaleSplitCalculator at launch
The pool opens at a price chosen so it matches the marginal price at the end of the curve. There is no price jump at the bond.

What happens to the curve

After bonding, the curve contract stops accepting buys and sells. Any buy or sell call against the launch reverts. Trading moves entirely to the V4 pool. The launch state stays readable. You can still call getLaunchState(launchId) and read everything about the curve.

What changes for traders

Before bonding, traders called buy or sell on the InkyPump V2 hook with a launch ID. After bonding, traders swap against the V4 pool through the Uniswap Universal Router at 0x551134e92e537cEAa217c2ef63210Af3CE96a065. The InkyPump UI handles this switch automatically. From a user perspective the trade page looks the same and the buttons still say “Buy” and “Sell”. Fees also change. Before bonding it was 2 percent total. After bonding it is 0.1 percent on the V4 pool.

What changes for the creator

The variable fee split still applies, but now it routes through the V4 hook on every swap instead of through the curve. The creator continues to earn from trades. The split is still controlled by creatorFeeSplitBps. The buyback portion still flows to a buyback that buys and burns the token from the pool. Withdrawal is still done with withdrawFees() on the hook.

How to tell if a token has bonded

Three signals:
  1. Call getLaunchState(launchId) on the hook. The returned struct has a flag indicating whether the launch is finalized.
  2. Listen for the LaunchFinalized event. It is emitted in the same transaction as the bond.
  3. In the UI, the bonding curve card on the trade page shows “BONDED” instead of a live progress percentage, and the chart switches from the curve to the V4 pool price.

Why a 0.1 percent fee

V4 pools use parts per million for fees. 1000 corresponds to 0.1 percent. The choice is low enough to keep swaps cheap and high enough to feed the buyback and creator revenue after bonding.