Implémentation des commentaires de transaction

Petite vidéo point d’étape pour les commentaires de transaction :

00:00 intro
00:24 résumé sur les commentaires de transaction v1
01:20 ce qu’on aurait pu faire en v1 (et dont on a discuté)
02:34 ce qu’on envisage de faire en v2
04:44 parenthèse sur l’interopérabilité avec des systèmes automatisés
05:15 démonstration technique du début d’implémentation
06:12 batch call pour grouper la remarque avec les transactions
06:38 encodage hexadécimal du commentaire de transaction
08:28 examen du bloc incluant le batch avec commentaire
09:25 examen des données indexées par subsquid
10:13 au programme pour la suite
12:30 à bientôt


Dans un premier temps, je propose de ne rien implémenter côté Duniter et de partir sur :

  • si la “remark” est au format /ipfs/<cid> c’est une donnée “offchain”
  • sinon la “remark” est interprétée comme donnée “onchain”

Pour ce qui est des messages crowdfunding Ğchange par exemple, c’est au choix d’implémentation :

  • soit c’est onchain, dans ce cas pas de droit à l’oubli et c’est mieux si c’est plus petit que 256 bits
  • soit c’est offchain, dans ce cas liberté totale

Pour écouter un événement il suffit par exemple de produire une donnée unique et d’écouter les événements remark avec son hash.

Dans un second temps, j’aimerais bien implémenter côté Duniter une pallet “describe” similaire à “remark” mais :

  • qui limite le wrapping à un seul call et pas un array pour faciliter l’implémentation downstream (mais on peut prendre en charge le batch commentés si on veut)
  • qui permet de qualifier nativement le type de donnée, par exemple avec un enum :
    • en clair → événement avec un hash (blake two 256 par exemple)
    • hors chaîne IPFS → événement avec un CID

Mais j’ai d’abord besoin de faire une PoC complète et de plus d’échanges sur ce fil.

2 Likes