Extrinsics, événements, et pourquoi le vocabulaire compte
Les chaînes Substrate n’ont pas de transactions au sens où les autres chaînes utilisent le mot. Elles ont des extrinsics — des informations venant de l’extérieur de la chaîne qui déclenchent des changements d’état — et des événements, qui sont ce que ces changements d’état émettent.
Ce n’est pas du pédantisme. Un extrinsic peut être signé par un compte ou non signé, il peut être soumis par la chaîne elle-même comme un inherent, et un extrinsic peut produire de nombreux événements. Un explorateur générique cherchant des « transactions » en trouve un sous-ensemble et manque le reste.
Subscan est construit autour du bon modèle. Chaque page d’extrinsic liste le module et l’appel invoqué, les paramètres, et chaque événement qu’il a produit. Si vous essayez de comprendre ce qui s’est réellement passé sur une chaîne Substrate, cette structure est la seule qui fonctionne.
Le coût est une courbe d’apprentissage. Vous rencontrerez balances.transferKeepAlive, staking.nominate et utility.batchAll avant que quoi que ce soit ne traduise les termes pour vous. Subscan suppose que vous savez déjà ou que vous irez chercher.
Le staking, la raison pour laquelle la plupart des gens arrivent
La preuve d’enjeu nommée de Polkadot est plus élaborée que le staking que la plupart des gens ont rencontré, et Subscan est là où elle devient compréhensible.
Les récompenses sont calculées par era — environ un jour sur Polkadot, six heures sur Kusama — et distribuées aux validateurs, qui en transmettent une part à leurs nominateurs après avoir pris leur commission. Votre rendement dépend donc de quels validateurs vous avez nominés, s’ils étaient actifs cette era-là, de leur commission, et s’ils ont été slashés.
Subscan montre tout cela : historique de récompenses era par era, les validateurs que vous avez réellement soutenus dans chaque era plutôt que ceux que vous avez nominés, changements de commission dans le temps, et tout événement de slashing. La distinction entre validateurs nominés et actifs est celle qui piège les gens — vous pouvez en nominer seize et n’en soutenir qu’un seul dans une era donnée, et si celui-ci est inactif vous ne gagnez rien.
Cela suit aussi le déstaking. La période de déverrouillage de Polkadot est de vingt-huit jours, et les fonds restent indisponibles pendant tout ce temps. Subscan montre où en est chaque tranche dans ce compte à rebours, ce qui est autrement quasiment impossible à établir.
Gouvernance : un processus constitutionnel, on chain
Polkadot fait tourner l’un des systèmes de gouvernance on-chain les plus ambitieux qui existent. Des référendums sont proposés, votés avec une pondération de conviction — verrouillez vos tokens plus longtemps, comptez pour plus — et exécutés automatiquement par la chaîne s’ils passent. Les dépenses de trésorerie passent par le même mécanisme.
Subscan met en avant tout le processus : référendums actifs avec leurs tracks et seuils, décomptes de votes répartis par conviction, l’appel réel qu’un référendum exécuterait s’il était adopté, et propositions de trésorerie avec leurs bénéficiaires et montants.
Ce dernier point mérite d’être souligné. Comme les actions de gouvernance sont des appels on-chain, vous pouvez lire exactement ce qu’un référendum fera plutôt que de vous fier à sa description. Une proposition intitulée d’une façon et encodant autre chose est détectable, et Subscan est l’endroit où vous la détecteriez. C’est un véritable mécanisme de responsabilité et très peu de chaînes ont un équivalent.
XCM, et pourquoi rien d’autre ne le suit
L’architecture de Polkadot est une relay chain avec des parachains connectées à elle, et XCM — Cross-Consensus Messaging — est la façon dont elles communiquent. Déplacer un actif d’une parachain à une autre est un message XCM, pas une transaction sur l’une ou l’autre chaîne au sens habituel.
Cela produit la confusion inter-chaînes familière sous une forme peu familière. Vous initiez un transfert sur la parachain A, il disparaît, et il apparaît sur la parachain B quelque temps après avec un identifiant différent. Recherchez le hachage original sur la destination et vous ne trouvez rien.
Subscan suit les messages XCM à travers les chaînes et relie les deux extrémités. Pour autant que nous puissions l’établir, c’est le seul explorateur qui fait cela, ce qui en fait non seulement la meilleure option pour les transferts Polkadot mais la seule.
Le schéma, encore
C’est la troisième fois qu’il apparaît dans nos tests : les messages L1/L2 d’Arbitrum, les chaînes de messages de TON, le XCM de Polkadot. Chaque fois qu’un système est asynchrone ou traverse des chaînes, une action devient plusieurs enregistrements et l’identifiant ne se transmet pas. Si un transfert a « disparu », la première hypothèse devrait toujours être que vous recherchez la bonne chose au mauvais endroit.
API et open source
Subscan publie son code et offre un niveau gratuit d’API avec une clé, avec des plans payants pour un volume de production. L’allocation gratuite est praticable pour des scripts et tableaux de bord, serrée pour tout ce qui est destiné aux utilisateurs.
Être open source compte plus ici que d’habitude. Les chaînes Substrate sont configurables — chacune active différents pallets, ce qui signifie différents extrinsics, événements et formes de données. Un explorateur gérant cent chaînes prend constamment des décisions par chaîne, et pouvoir lire ces décisions est la différence entre faire confiance à la sortie et la vérifier.
Pour les parachains compatibles EVM comme Moonbeam, vous voudrez à la fois Subscan et un explorateur EVM. Moonscan montre le côté EVM ; Subscan montre le côté Substrate. La même chaîne, deux vues incompatibles, toutes deux incomplètes seules.