jeu. Oct 28th, 2021
    Free TON, Online auctions

    Le DevEx SG de la communauté Free TON a organisé un concours pour la mise en œuvre du mécanisme d’enchères en ligne lors de la deuxième tentative. La dernière fois, le départ a été reporté en raison du petit nombre de participants et de la faible qualité du travail.

    L’objectif principal du concours Online auctions implementation était de développer une implémentation de référence de différents types d’enchères dans la blockchain Free TON conformément à l’architecture des contrats intelligents distribués. Par conséquent, les concurrents ont participé à la création, aux tests et au déploiement de contrats intelligents mettant en œuvre divers types d’enchères.

    Conditions requises pour les travaux du concours

    Étant donné que la vente aux enchères de Vickrey est déjà mise en œuvre par le concours DeNS, le jury a suggéré que les candidats se concentrent sur les types d’enchères anglais et néerlandais.

    Recommandations et exigences :

    • mise en œuvre de types d’enchères anglais, néerlandais et « a l’aveugle » pour les types d’enchères directes (forward) et inversées (reverse). Dans un type d’enchère « à l’aveugle », tous les participants soumettent simultanément des offres scellées, de sorte qu’aucun participant à l’enchère ne connaît l’enchère d’un autre participant ;
    • les enchères doivent être évolutives et ne doivent pas reposer sur un seul contrat. Le contrat racine de l’enchère doit pouvoir déployer un nombre infini d’enchères atomiques ;
    • la possibilité de mettre en place des systèmes d’enchères unifiés ;
    • les enchères doivent émettre des événements en chaîne signalant des changements d’état importants qui pourraient être utilisés par d’autres contrats intelligents ;
    • interaction des contrats intelligents avec TON Crystal, jetons TIP-3 ;
    • la présence de la fonction de transfert vers DePool.

    Les candidatures des participants doivent contenir du code source, des scripts de test pour toutes les fonctions utilisant l’un des environnements existants, ainsi qu’une description utilisant l’un des langages suivants : TLA+, TL-B, UML, famille Prolog.

    Critères d’évaluation du concours et fonds du prix

    Les membres du jury ont évalué les candidatures des participants du point de vue de la meilleure mise en œuvre des types d’enchères conformément aux recommandations architecturales fournies et aux termes du concours.

    1ère place — 50 000 TON Crystals
    2ème place — 35 000 TON Crystals
    3ème place — 20 000 TON Crystals
    4ème place — 15 000 TON Crystals
    5ème place — 10 000 TON Crystals

    Première place

    Quatre participants se sont battus pour remporter le concours. La meilleure était la candidature n° 3 de l’équipe de développement TON RED dirigée par @Abionics. Le résultat est de 8,25 points et 50 000 TON Crystals.

    Le jury a évalué la mise en œuvre des six types d’enchères. Tous les types de paris suivants sont pris en charge : en TON Crystal, en TON Crystal via DePool et en jetons TIP-3.

    Le jury a noté le système de test de haute qualité et bien développé pour les contrats intelligents d’enchères, écrit en Python à l’aide des bibliothèques unittest et tonos-ts4. Il existe des tests pour chaque type d’enchères et un test pour le contrat racine de l’enchère.

    L’équipe TON RED a développé un programme spécialisé Viewer qui suit les événements et affiche toutes les enchères du contrat intelligent racine dans un seul tableau. Vous pouvez cliquer sur n’importe quelle enchère et voir les informations la concernant dans une fenêtre pop-up : type, statut, durée, enchères, etc.

    La deuxième place

    7,50 points et 35 000 TON Crystals sont allés à Team Pruvendo — candidature n ° 4.

    Il dispose d’un système de contrat intelligent flexible qui met en œuvre un large éventail d’enchères. Il est implémenté dans Solidity, où les tests sont effectués à l’aide de la plateforme TS4.

    Contrats intelligents clés :

    • AuctionRoot – lance une enchère et permet le transfert de jetons d’IGiver (vendeur) à IBid (acheteur).
    • IAuction – contient les propriétés d’une enchère spécifique.
    • IBid – contient des informations sur l’offre.
    • IGiver – contient des informations sur la vente.

    Pruvendo a fourni des diagrammes UML qui décrivent les mécanismes de mise en œuvre d’un type particulier d’enchère.

    Troisième place

    Candidature n ° 2 d’une équipe de membres de la communauté DE OLIVEIRA & Fabrice LE FESSANT — 6 points et 20 000 TON Crystals.

    Leur travail se compose de deux parties, qui décrivent la mise en œuvre des types d’enchères suivants :

    • enchères anglaises avec un pourcentage minimum d’incrémentation ;
    • enchères néerlandaises avec mode de contrôle automatique des prix : le prix diminue automatiquement dans le temps ;
    • enchères néerlandaises utilisant le mode d’ajustement manuel du prix : le prix est réduit manuellement par la « maison de vente aux enchères » ;
    • enchères inversées anglaises.

    L’équipe a clairement démontré les différentes étapes de la mise en œuvre des enchères.

    Les juges ont attribué les inconvénients de la décision présentée au fait que tous les types d’enchères requis n’ont pas été mis en œuvre par les spécialistes de l’équipe. Dans l’algorithme d’enchères anglais inversé, tous les contrats intelligents du système n’ont pas été testés et déployés.

    Quatrième place

    Et enfin, la quatrième place est revenue à l’équipe de développement dirigée par Anton Platonov. Candidature  n ° 1 — 4,75 points et 15 000 TON Crystals.

    La mise en œuvre des types d’enchères suivants est présentée :

    • anglais avancé ;
    • néerlandais avancé ;
    • version anglaise « aveugle »

    La plupart des juges ont noté que le système de contrats intelligents proposé par les auteurs de l’application doit être amélioré, car il ne dispose pas d’algorithme pour mettre en œuvre les versions inversée anglaise, inversée néerlandaise et « aveugle » du type d’enchères néerlandais.

    14
    0