Sources à condition de dépense complexe

Sakia avance dans le support des sources à conditions de dépense complexe (différente de la simple signature du destinataire).

Le but est de pouvoir déverrouiller TOUS type de conditions.

Sakia sait maintenant repérer une transaction qui est une source potentielle pour un compte en analysant la condition de dépense. Elle apparaît soulignée dans Sakia.

Sur l’exemple, une transaction que j’ai envoyée à un compte mais que je peux récupérer après une semaine si elle n’est pas consommée entre temps :

Je peux sélectionner cette transaction débitrice et l’utiliser comme source.
La fenêtre d’envoi de monnaie apparaît alors.

Je peux vérifier si je peux consommer la source en évaluant la condition de dépense. J’obtiens alors des infos :

Capture du 2020-03-28 18-38-05

Et non, vous ne rêvez pas. Il y a bien derrière un interpréteur de condition de dépense Duniter capable d’analyser TOUS type de condition valide.

Comme on peut le lire ici, je dois attendre jusqu’au 30 mars 18h49 temps blockchain pour récupérer ma dépense.

A suivre…

8 Likes

Quand vous aurez mis en place les transactions chaînées, on parlera des conditions de lock spéciales.

Je suis en plein dedans dans Sakia et c’est passionnant, mais complexe.
Il faut gérer les sources qui se déverrouillent suivant la date, celles qui nécessitent plusieurs signatures, et celles qui nécessitent des mots de passes. Sachant qu’on peut joyeusement mélanger tout ça, vous aurez besoin de plusieurs outils :

  • Chercher un pattern dans la condition pour savoir si on la gère ou pas.
  • Évaluer le script de la condition pour savoir si elle est déverrouillée ou pas (faire un interpréteur de script Duniter quoi…).

J’ai codé les deux cette semaine dans Sakia, grâce à la grammaire des conditions de Duniterpy.

J’en ferai profiter tout le monde quand ce sera prêt…

6 Likes