Ethereum · Smart contracts · 2022

Yakuza Inc.

J’ai conçu et lancé le contrat, l’allowlist, les contrôles de vente, les métadonnées et le circuit de versement à l’origine de la vente intégrale de 3,223 tokens Ethereum, pour un montant à sept chiffres.

Ingénieur principal smart contracts et lancement Personnage rouge n° 1 en pixel art de Yakuza Inc., issu de la collection Ethereum
321.4 ETHproduit des ventes primaires
3,223tokens mintés
56 sdernière fenêtre publique

Maintenir un parcours de mint payant suffisamment léger pour absorber un pic de demande sans compromettre les garanties liées à la liste d’autorisation, à l’offre ou aux paiements.

Un mint Ethereum très attendu condense des mois de travail en quelques minutes irréversibles. Un opcode coûteux, une preuve défectueuse, un indicateur de vente erroné ou un mauvais calcul de réserve peut faire gaspiller du gas aux acheteurs et interrompre le lancement. J’ai conçu le contrat et sa mise en production comme un tout : limiter le parcours payant, donner à l’équipe des contrôles clairs et rendre l’état public visible à mesure que la demande arrivait.

01

Parcours de mint public minimal

La fonction publique effectuait les contrôles essentiels de prix et d’offre avant de minter le moindre token. Le maintien d’un chemin critique resserré a réduit le traitement du bytecode et rendu le comportement des frais de gas plus prévisible en période de forte charge.

02

Vérification isolée de la liste d’autorisation

La vérification des preuves de Merkle et le suivi des mints par adresse étaient intégrés au parcours de prévente, afin que les acheteurs publics ne continuent pas à payer le coût de la logique de liste d’autorisation une fois la vente ouverte.

03

Contrôles de mise en production explicites

Des contrôles distincts pour la prévente et la vente publique, des métadonnées gérées par le propriétaire, la prise en charge des airdrops et les versements via PaymentSplitter ont permis de piloter le lancement sans modifier le contrat déployé.

04

Compilation tenant compte des frais de gas

La version vérifiée en Solidity 0.8.7 utilisait l’optimiseur avec 1,000 passes. Même la limite d’offre a été choisie en tenant compte du coût de gas pour le minter et documentée dans le contrat.

  1. 01

    Pris en charge de bout en bout le contrat ERC-721 et le pipeline de lancement, notamment le déploiement, la liste d’autorisation, la vente publique, les métadonnées, les airdrops et les mécanismes de paiement.

  2. 02

    Réduction du travail sur le parcours payant aux seuls contrôles réellement nécessaires à la vente, tout en conservant la vérification Merkle dans le processus de liste d’autorisation.

  3. 03

    Conception et test de la séquence opérateur permettant de passer de la prévente à la vente publique sans redéploiement ni modification improvisée de l’état du contrat.

  4. 04

    Suivi de la mise en ligne jusqu’à l’épuisement de la collection, avec vérification du contrat et du processus de mint par rapport à l’état de la chaîne pendant le remplissage des derniers blocs.

Un mint à sept chiffres de 3,223 tokens, épuisé en moins de deux heures ; les 596 derniers mints publics ont été réalisés en 56 secondes.

Le résultat : un lancement à sept chiffres sans accroc, sans réécriture d’urgence ni contrat de remplacement. Les 3,223 tokens se sont tous vendus en moins de deux heures, générant 321.4 ETH de recettes primaires. À l’ouverture de la vente publique, les 596 derniers mints ont été validés sur deux blocs Ethereum en 56 secondes ; la collection a ensuite dépassé 1,000 ETH de volume sur les places de marché.

  • Le contrat a permis la vente intégrale de 3,223 tokens et le versement de 321.4 ETH au titre des ventes primaires.
  • Les 596 derniers mints publics ont été réalisés en seulement 56 secondes, sur les deux derniers blocs Ethereum.
  • La collection a ensuite dépassé 1,000 ETH de volume sur les places de marché ; le contrat vérifié et l’historique du lancement restent publiquement consultables.
Solidity 0.8.7ERC721EnumerableMerkleProofPaymentSplitterReentrancyGuardOpérations de mise en production Ethereum
Étude de cas suivante42 Lisboa