
Un workflow peut se terminer parfaitement tout en laissant le monde extérieur dans un état incorrect. Imaginons une application de commerce autonome autour de @RialoHQ qui reçoit une commande pour le dernier article en stock. Le workflow se termine avec succès. Le paiement est réglé, la commande est confirmée et le client reçoit son reçu. Du point de vue de l’application blockchain, tout semble terminé. Mais l’API de l’entrepôt ne reçoit jamais la mise à jour finale de l’inventaire. L’état onchain indique désormais que l’article a été vendu. L’entrepôt indique toujours 1 unité disponible. Quelques minutes plus tard, un autre système lit l’inventaire de l’entrepôt et tente de vendre à nouveau le même article. Rien n’a nécessairement échoué dans la transaction originale. Le problème est que deux systèmes censés décrire la même réalité se sont désynchronisés. C’est ici que l’idée de réconciliation devient intéressante lorsqu’on pense aux applications construites autour de Rialo. Lorsque les logiciels interagissent avec des API externes, des bases de données, des systèmes de paiement et d’autres services du monde réel, une exécution réussie ne garantit pas toujours que chaque système connecté se retrouve dans l’état attendu. Une application peut donc devoir aller au-delà de la question « Mon action a-t-elle réussi ? » pour finir par se demander : « Le monde extérieur reflète-t-il maintenant ce qui aurait dû se produire ? » Si l’application s’attendait à ce que l’inventaire passe de 1 à 0, elle peut comparer ce résultat attendu à l’état signalé par le système externe. Si l’entrepôt indique toujours 1, cet écart devient quelque chose que l’application peut identifier et gérer, au lieu de supposer silencieusement que tout reste synchronisé. Le même problème apparaît dans les paiements, les réservations, la logistique et de nombreux autres workflows où l’exécution onchain interagit avec des systèmes hors chaîne. Cela crée une distinction importante. L’exécution vous indique ce que l’application a fait. La réconciliation vous indique si la réalité s’est finalement alignée sur ce que l’application attendait. Pour les applications qui connectent de plus en plus l’exécution blockchain au monde extérieur, les deux peuvent être importantes. Parce que terminer le workflow, c’est une chose. S’assurer que chaque système connecté est d’accord sur ce qui s’est produit, c’en est une autre.
