D17 DOCS
Participants & traders

Settle, withdraw, and trade

Claims do not expire, and an absent participant cannot block the pool.

Finalization

After all five rounds finish on a launch that met its success conditions, anyone may call D17Launch.finalizeLaunch(). It is a one-time, permissionless lifecycle action that fixes successful-sale accounting and the configured treatment of unsold sale tokens.

A permanently failed launch is already on the separate full-refund path. It is not finalized: finalizeLaunch() reverts for that launch.

No particular creator or participant is required, and allFinalCommitmentsSettled is a metric rather than a gate.

Owner settlement

The locker owner may call settleAndClaim(launch, expectedRulesHash) after finalization. Settlement calculates each round's token entitlement, the launch treasury share, and the WETH share intended for liquidity.

Sale tokens become withdrawable inside the locker. Residual WETH becomes withdrawable WETH. Token withdrawal remains blocked until the launch reports trading open.

Permissionless settlement after grace

Once poolCreationOpensAt is reached, anyone may call settleAfterGrace(launch) on a known locker. The caller does not receive the assets: tokens and residual balances remain credited to the locker's owner. This prevents an absent participant from blocking progress without creating a bounty or redirect path.

Pool creation

Anyone may call D17LiquidityVault.createOfficialPool(minLpMinted, deadline) once the grace boundary is open. The function creates or validates the canonical Uniswap V2 pair, rejects a live or token-preseeded pair, deposits settled token/WETH amounts, and mints LP to the vault.

The vault exposes no protocol-LP withdrawal function.

Late settlement

Settlement remains available after the official pool exists. A late locker receives the same sale-token entitlement and uses the same configured treasury split. Its liquidity WETH and reserved LP-token share are transferred into the official pair atomically through mintLateLiquidity; newly minted LP stays in the vault.

Withdraw and trade

After trading opens, the locker owner may call withdrawUnlockedTokens. Withdrawable WETH can be withdrawn independently. Trading occurs against the official pair through ordinary market tooling; D17 does not proxy trades through the read API.

On this page