Graduation
How a gitpad market moves from the bonding curve to a Meteora DAMM v2 pool with permanently locked liquidity.
Two phases
Every gitpad market has two phases:
- Bonding curve. The market starts on a Meteora Dynamic Bonding Curve (DBC). Prices follow a configured curve, and buyers build up a real SOL reserve.
- DAMM v2 pool. When the reserve reaches the market's target, Meteora migrates the market into a DAMM v2 pool. Trading continues there.
Graduation is the move from the first phase to the second.
Reserve, not volume
Graduation depends on how much SOL stays in the curve, not on how much has been traded.
- Buys add SOL to the reserve, after trading fees.
- Sells remove SOL from the reserve, so progress can move backward.
- Volume counts buys and sells together. A market can have high volume and still be far from its target.
The curve also uses virtual reserves to set its starting price. These are curve parameters, not deposited SOL, and cannot be withdrawn. Every market starts with zero real SOL reserve.
The 85 SOL target
Current launches graduate when the curve holds 85 SOL of real quote reserve. Each market's target comes from its on-chain configuration, and the market page shows progress against that exact value.
With no sells at all, about 86.5 SOL of fee-inclusive buys would build an 85 SOL reserve. The remaining amount shown on a market page is a moving estimate, not an executable quote, because fees and later sells change what is needed.
Claiming builder fees does not reduce the reserve, and locking tokens does not add to it. Builder fees and platform revenue are accounted for separately from the curve's reserve.
Migration to DAMM v2
When the target is reached, the curve completes and no further curve trades are accepted. Meteora's migrator service moves the market into a DAMM v2 pool, using the reserve SOL and the tokens set aside for migration (about 20% of supply).
gitpad does not treat the market as graduated until it has verified the migration on chain: the destination pool must derive from the market's approved configuration and canonical mint, and the migration transaction must be finalized. Until then, the market shows a transition state. Reaching the target and completing migration are separate events.
After verification, the market page trades the DAMM v2 pool directly and links to View pool on Meteora.
Locked liquidity
At migration, the liquidity is split into two positions:
| Position | Share of migrated liquidity | Used for |
|---|---|---|
| Creator position | 50% | Repository builder fees after graduation |
| Partner position | 50% | gitpad's platform revenue after graduation |
Both positions are permanently locked on chain. The liquidity principal cannot be withdrawn by anyone, including gitpad. The fees these positions earn remain claimable.
The creator position is held by gitpad's protected creator signer, which pays its fees to the repository's verified builders after the usual checks. Verifying a repository does not transfer the position itself to the builder. See Security.
Fees after graduation
The DAMM v2 pool has its own fee rules:
- a 1% base fee, with dynamic fees enabled, so the total fee can rise with volatility;
- a 20% protocol share to Meteora;
- fees collected in SOL only.
The remaining fees go to liquidity positions in proportion to their liquidity. The creator position earns the builders' part and the partner position earns gitpad's part.
The pre-graduation split (0.994% builders, 0.406% gitpad, 0.35% Meteora) does not carry over as a fixed rate. See Fees.
Builders can keep claiming after graduation. One claim can include both remaining curve fees and newly earned DAMM fees. Discovery rewards stop at curve completion and do not accrue from DAMM trades, but rewards already earned stay claimable.
Builder token allocation
Markets enrolled in the builder allocation reserve 1% of supply (10,000,000 tokens) for the repository's verified builder. It becomes claimable only after verified graduation, and only once per market. If the market never graduates, the allocation stays locked. The market page shows whether a market is enrolled. See Builders.
Found something wrong? Edit this page on GitHub.
