Au début, je pensais que le gaz dans la VM Dusk’s Rusk servait surtout de garde-fou contre des contrats qui consommeraient trop de calcul. Mais en regardant de plus près, c’est la frontière comptable qui a attiré mon attention. Chaque fonction de la VM a un coût en gaz, tandis que les transactions ont leurs propres limites en gaz, et que les blocs fonctionnent eux aussi dans une limite de gaz. Ce qui m’a frappé, c’est que le calcul est donc borné à plusieurs niveaux, et pas seulement à l’intérieur d’un seul appel de contrat. Une transaction doit rester dans son propre budget, mais elle devient aussi une partie d’une contrainte de ressources plus large, au niveau du bloc. Cela crée une petite dépendance que je n’avais pas vraiment envisagée auparavant : les limites d’exécution locales doivent encore s’insérer dans une capacité partagée. Une transaction peut être valide dans la limite qui lui est propre tout en contribuant au calcul fini disponible pour le bloc dans son ensemble. Peut-être que c’est simplement le compromis consistant à maintenir un calcul général borné. Donc, la question plus discrète est de savoir comment ces limites locales doivent être calibrées lorsque, au final, chaque transaction partage le même bloc ?

#dusk $DUSK @Dusk