DOCS
On this page6 sections

Reference

Testnet to Mainnet

What can stay the same, what must be replaced, and why Testnet success is not Mainnet GO.

Mainnet NOT DEPLOYED / NO-GO

Rules that do not change with the chain

  • 3% canonical buy, 3% canonical sell, 0% wallet transfer tax.
  • All-in internal 3.5% game fee; Manual 2x and Mystery 2.5x limits.
  • Winner Liability before JIT; failed purchase cannot reverse a win; complete USDG fallback after SLA.
  • Catalog freeze, terminal state irreversibility, nonce/quote replay protection, and protected fund isolation.
  • Mystery seven-day access and Hook-only subsidy provenance.
  • Parity Binance Mark Price rules and Provider VRF selection boundary.
  • This Testnet Source A fixes maximumConcurrentBets=150; it is not a per-release tuning input.

Mainnet replacements

AreaTestnet boundaryMainnet requirement
AssetsTest USDG and synthetic rewardsOfficial USDG and fresh official Stock Token provenance
JIT/HolderInventory-backed Testnet venuesApproved production RFQ/purchase routes with live depth evidence
RandomnessTest Provider 4/Node/SubscriptionProduction Provider, Proving Key, Subscription, credentials, LINK/native funding
SignersIsolated Testnet EOAsKMS/HSM or threshold production signers and independent watchers
GovernanceShort Testnet Timelock and test rolesOwner multisig, formal signing ceremony, production delay, separated keys
DataTest RPC/DBCommercial primary RPC, independent backup/archive RPC, new production DB, backup/replay
CapitalSmall Testnet LP/Reserve/Bond; concurrent Bet cap fixed at 150Mainnet price, liquidity, Ropen/Rtarget, caps, stress model, and funding; any different cap requires a separate versioned Mainnet policy
AssuranceInternal tests and acceptanceIndependent audit closure and public vulnerability disclosure/Bug Bounty

Mainnet launch parameters remain UNDECIDED

AreaMainnet decision
FLIP supplyTotal supply; team, community, ecosystem, and liquidity allocation; lockups and vesting — UNDECIDED
Capital formationSeed/private-sale terms and final Fair Launch mechanism — UNDECIDED
Canonical marketInitial LP amount and price; Mainnet PoolKey; Hook address; Locker; fee recipient — UNDECIDED
Reserve and admissionOpening/target/safety thresholds, maximum bet, protected exposure, and concurrent-bet limits — UNDECIDED
JIT / RFQProduction venue, custody, depth, spread, quote TTL, failure-rate and fallback canaries — UNDECIDED
Stock CatalogOfficial Mainnet Stock Token identities, ordering, decimals, provenance, and reward eligibility — UNDECIDED
Reporter policyPrice Reporter quorum and Holding Reporter quorum, signers, rotation, and Bond policy — UNDECIDED
RandomnessMainnet VRF Provider, Proving Key, Subscription, node, BHS, funding, and Bond — UNDECIDED
Time policyMainnet TWAB, Holder Epoch, Coin refund, Parity VOID, JIT cash-fallback, and Mystery windows — UNDECIDED
GovernanceMultisig members/threshold, Timelock delay, guardian, permissions, and key custody — UNDECIDED
SecurityIndependent external audit closure and public vulnerability-disclosure/Bug Bounty channel — UNDECIDED

All 15 typed replacement IDs

These IDs are the complete typed Testnet policy set. Mainnet tooling may close an ID only with replacement-specific evidence; it may not rename, delete, or bypass an item by flipping a generic ready boolean.

Policy IDRequired Mainnet replacementMinimum closing evidence
official-usdgReplace fixed-supply Test USDG everywhere with current official USDGOfficial provenance; chain 4663 runtime; decimals=6; transfer/allowance canary; no mint/faucet authority
official-stock-tokensResolve every official Stock Token afresh and publish a new Official CatalogIssuer/custodian/provenance, runtime/decimals/metadata and transfer canary for every asset
remove-faucetDelete Testnet faucet and operational claim stage from the full graphZero denylisted contract/role/stage/env/action references; production assets come from audited budgets
production-jit-venueReplace Testnet inventory venue/executor with approved 0x, Rialto, or equivalent routeSuccess/expiry/replay/min-out/zero-depth/retry/SLA fallback and two-sided balance-delta conservation
production-holder-venueReplace Testnet Holder purchase venue with approved official-stock procurement/custodyUSDG input, Stock output, purchase, epoch funding, claim and dust conservation canary
production-vrfCreate production Router/Provider/Proving Key/Subscription/Node/BHS graphRuntime bindings; LINK/native/Bond preflight; sequential/concurrent/out-of-order/late/>256 recovery/provider migration
production-signersReplace all Testnet settlement/JIT/Parity/Holding EOAs with KMS/HSM or threshold sets and watchersAddress/threshold/domain binding plus rotation, revocation, wrong-domain and replay ceremony evidence
production-governanceDeploy Owner Safe, formal Timelock, independent guardian and separated production rolesSafe ceremony, role/event replay, bootstrap admin revoked, owner/pendingOwner/allowlists exact
production-rpcUse commercial primary plus a different-provider archive/backup RPCChain/head/block/runtime quorum; rate-limit/fork/failover/archive-window and empty-database replay drills
production-secret-managerMove local file/Keychain secrets to role-scoped Secret Manager and KMS/HSMLeast privilege, audit logs, rotation, revocation, disaster recovery and secret scan
independent-operational-keysGenerate Mainnet-only deployer/Treasury/Oracle/BHS/Keeper/Publisher/Submitter accountsPublic inventory, alias/derivation checks, nonce/gas budget, minimum funding and no role/testnet reuse
external-auditIndependent review of final Source A, adapters, V4 Hook, accounting and governanceFinal report, findings, fix commits, retest and public disposition of residual risks
public-vulnerability-disclosurePublish disclosure and Bug Bounty processPublic policy with scope, rewards, response SLA, emergency contact and handling drill
mainnet-liquidity-reserveFund and permanently lock real canonical LP; size Reserve/Bond/caps from stress dataActual spend/refund/LP owner plus Ropen/Rtarget/floor/cap math and consecutive-win/JIT/SLA preflight
production-rfq-canaryExercise real quotes and deliveries for every approved reward100/1,000/5,000/10,000 USDG depth, spread/TTL/gas/failure rate, small stock receipt and full USDG fallback

Five additional gates that must become typed

  • Mainnet policy, manifest, runtime, service, and action tooling must contain no Testnet-only 46630, mainnetIneligible, path, adapter, or evidence dependency; a separate 4663 schema/builder/loader/action graph must prove this in code.
  • Pin official Mainnet Uniswap V4 Core, Periphery, and Permit2 exact versions, addresses, deployment provenance, and runtime hashes.
  • Close the Community CREATE2 pool-initialization race with a fail-closed private-builder flow or an independently audited Factory-only Guard Hook; the Community pool remains 0.30% LP-only and must not inherit the FLIP tax.
  • Prove Binance production availability, watcher behavior, and immutable raw-response archival while retaining the exact https://fapi.binance.com premiumIndex/markPriceKlines source rules; observation backups may alert but never silently rewrite a Ticket.
  • Use separate new Mainnet application and Chainlink PostgreSQL systems with TLS, backups, restore/standby drills, and a full replay from empty application storage.

Hard NO-GO components

Mainnet cannot include a contract, role, credential, database, or evidence identity marked Testnet, synthetic, Mock, or Harness. The current release-policy and manifest tooling intentionally accepts chain 46630 only; Mainnet requires its own typed policy, builder, runtime loader, addresses, and evidence.

Community RWA public-mempool initialization protection, official asset/RFQ canaries, external audit, production key custody, governance ceremony, and independent RPC/operations are blocking even after Testnet is fully accepted.

Authority sources

These repository paths were used to derive this page. They link only when an explicitly configured public repository and immutable Source A commit are both available; otherwise they remain plain paths. Release addresses and live status still require an accepted manifest and finalized evidence.

  • docs/FLIP_TESTNET_TO_MAINNET.md
  • docs/FLIP_TESTNET_PRODUCTION_PARITY.md
  • services/indexer/src/protocol-v3-release-policy.ts
  • services/indexer/src/protocol-v3-release-manifest.ts