Contracts
Responsibilities, authority boundaries, and links to the complete ABI-derived reference.
Canonical factory layer
D17Factory
Validates LaunchConfig, records canonical launches and lockers, exposes the public deployment constants, and delegates atomic launch creation to the pinned launch factory. Its temporary owner may pin the launch and locker factories; public deployment ownership is then renounced.
D17LaunchFactory
Creates a token, launch, and liquidity vault for one approved config. It performs their one-time wiring and supply distribution, closes token minting, and renounces token ownership. Only the canonical D17 factory may call it.
D17TokenFactory and D17LiquidityVaultFactory
Small deployment helpers callable only by the pinned launch factory. Their temporary owners can pin that launch factory once and then renounce ownership.
D17LockerFactory
Creates a locker for a requested owner and registers it in the canonical D17 factory. It is immutable and has no owner surface.
Per-launch layer
D17Launch
Stores immutable economics and timing, records round commitments/refunds, discovers price, finalizes the outcome, calculates settlement, reserves LP tokens for unsettled lockers, and records official-pool facts.
D17Token
Fixed-supply ERC-20-like token with immutable launch identity, on-chain metadata, one-time mint closure, and a trading gate. Before the official opening, ordinary transfers and holder burns are blocked; the launch retains the narrow unsold-sale burn path.
D17LiquidityVault
Creates the official Uniswap V2 pair once eligible, deposits initial settled liquidity, records composition, accepts atomic late-liquidity top-ups from canonical lockers, and permanently holds the resulting LP tokens.
Per-participant layer
D17Locker
A wallet-owned custody contract. It wraps committed ETH to WETH, verifies canonical launch rules, tracks round positions, processes refunds, settles sale-token/liquidity obligations, and lets only the owner withdraw released WETH or unlocked tokens.
Complete surface
The contract reference is generated from the nine canonical ABI JSON files. Each contract page lists its constructor, every function with input/output types and state mutability, every event including indexed fields, and every custom error. A completeness check compares generated signatures and counts to the copied ABI inputs.