Seed-deposit requirement for new market listing
GMX v2 (GMX Synthetics)'s assessment for RD-F-071 — scored green on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
GMX v2 enforces a first-deposit guard at the contract level in ExecuteDepositUtils.sol via the _validateFirstDeposit function. When marketTokensSupply equals zero (new or empty pool): (1) the deposit receiver is required to equal RECEIVER_FOR_FIRST_DEPOSIT = address(1), a burn address — any other receiver causes a revert; (2) deposit.minMarketTokens() must meet or exceed a protocol minimum floor; the contract reverts with InvalidMinMarketTokensForFirstDeposit if not satisfied. This is a mandatory code-enforced seed-deposit equivalent: initial GM token shares are routed to a burn address and no user can bootstrap a new market while retaining all initial shares. The contract source includes the comment 'this also helps to prevent manipulation of the market token price by the first depositor.' Green: seed-deposit requirement is code-enforced.
Sources #
- GitHubGMX synthetics — ExecuteDepositUtils.sol (first-depositor guard, not Compound model)https://raw.githubusercontent.com/gmx-io/gmx-synthetics/main/contracts/deposit/ExecuteDepositUtils.solretrieved 2026-05-05
Methodology #
Determine whether market-listing governance or code requires a minimum seed deposit before borrow-enabling a new market.
See the full factor methodology and distribution across all protocols →