#dusk $DUSK @Dusk

Je me surprends sans cesse à faire la même erreur quand je retrace un transfert de Dusk : je vois la preuve passer et, par réflexe, je me dis, d’accord, c’est à moi maintenant.
Ça paraît logique jusqu’à ce que je suive la transaction un pas plus loin.

Phoenix a déjà le DUSK chiffré prêt. Le portefeuille destinataire a rempli la condition du détenteur de XSC. DuskVM a accepté la preuve à connaissance nulle intégrée dans le Contrat de Sécurité Confidentielle.

Je me suis donc dit que la partie difficile était essentiellement terminée.
Ce n’était pas le cas.

Le fait que DuskVM accepte la preuve signifie que le transfert a satisfait à la condition XSC. Cela me dit que le portefeuille destinataire est valable pour cette étape. Mais cela ne veut toujours pas dire que Dusk L1 a finalisé le changement de propriété.
Cette responsabilité se trouve plus loin sur le chemin, avec DuskDS, où la transition d’état doit encore devenir déterministe et finale.
Ce petit écart a changé la façon dont je lisais l’architecture.
Le destinataire peut être éligible.
La condition peut être satisfaite.
La preuve peut être acceptée.
Et pourtant l’état de propriété peut encore être en attente.
Je traitais DuskVM comme la dernière porte.
Peut-être faut-il plutôt le comprendre comme le point où le système dit que cette transition est valide pour continuer.
DuskDS est l’endroit où cette transition acceptée devient un état final de niveau 1.

Il y a donc vraiment trois moments différents : valide, exécutable, final.
Je les ai tous fusionnés en un seul.
Et maintenant je me demande : si la preuve a déjà été validée mais que DuskDS n’a pas encore finalisé l’état, à quel moment précis devrais-je dire que l’actif m’appartenait ?

@Dusk #dusk $DUSK