<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Aymen Gnaba</title>
    <description>The latest articles on DEV Community by Aymen Gnaba (@makabeez).</description>
    <link>https://dev.to/makabeez</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4176044%2Ff5456cd3-7b52-4d20-b4fa-3566579e487c.png</url>
      <title>DEV Community: Aymen Gnaba</title>
      <link>https://dev.to/makabeez</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/makabeez"/>
    <language>en</language>
    <item>
      <title>40 millions de TPS, reconstruits depuis la chaîne</title>
      <dc:creator>Aymen Gnaba</dc:creator>
      <pubDate>Sun, 11 Oct 2026 17:17:52 +0000</pubDate>
      <link>https://dev.to/makabeez/40-millions-de-tps-reconstruits-depuis-la-chaine-3ij6</link>
      <guid>https://dev.to/makabeez/40-millions-de-tps-reconstruits-depuis-la-chaine-3ij6</guid>
      <description>&lt;p&gt;&lt;em&gt;Ce que le record de Sui à Basecamp a réellement mesuré, reconstruit à partir des règlements inscrits sur le mainnet.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  En bref
&lt;/h2&gt;

&lt;p&gt;Je n'ai pas attendu l'audit. J'ai retrouvé le contrat derrière le record de 40 614 180 TPS annoncé par Sui, récupéré chaque règlement qu'il a inscrit sur le mainnet, et reconstruit la courbe de débit seconde par seconde. &lt;strong&gt;La chaîne donne un pic de 39,86 millions de TPS à 08:46:10 UTC le 7 octobre, à moins de 2 % du chiffre officiel.&lt;/strong&gt; Et la courbe suit, à une marche près, les chiffres annoncés sur scène.&lt;/p&gt;

&lt;p&gt;Le record tient donc. Mais ce qu'il mesure est plus précis que « des transactions par seconde » :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Un seul opérateur, des vagues planifiées.&lt;/strong&gt; Les 7 680 tunnels qui ont produit le record ont tous été ouverts et financés par une même adresse, puis activés en dix vagues, chacune un multiple de 256 tunnels. Chacun tournait à environ 5 230 mises à jour hors chaîne par seconde. 7 680 × 5 230 ≈ 40 millions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sui a ancré l'activité, il ne l'a pas exécutée.&lt;/strong&gt; Les 15,2 milliards de mises à jour hors chaîne du run ont été engagées via 11 502 transactions mainnet, pour environ 86 SUI de gas net.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;C'est à la fermeture qu'un agent doit regarder.&lt;/strong&gt; Les tunnels actifs ont été réglés onchain environ 0,4 s après leur dernière mise à jour. 593 tunnels dont la contrepartie n'a jamais envoyé une seule mise à jour n'ont été clôturés de force qu'après une fenêtre fixe de 3 ou 6 heures.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Une image résume tout : un tunnel de paiement qui a enchaîné 3 132 986 transferts, et s'est refermé avec exactement les 100 MTPS de départ de chaque côté.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ce qui a été annoncé
&lt;/h2&gt;

&lt;p&gt;Le record a clôturé la première journée de Sui Basecamp, sur la Summit Stage, lors d'une session de 16 h 35 menée par Adeniyi Abiodun, cofondateur et CPO de Mysten Labs (&lt;a href="https://www.youtube.com/watch?v=1e-cW4yBdMA" rel="noopener noreferrer"&gt;livestream du jour 1&lt;/a&gt;, à partir d'environ 5:35:00). Il espérait dépasser largement 12 ou 15 millions, et a rappelé que la médiane des pronostics du public était de 9,04 millions. Puis il a commenté le compteur en direct, jusqu'au passage des 40 millions.&lt;/p&gt;

&lt;p&gt;Le compte rendu officiel donne les détails (&lt;a href="https://www.sui.io/blog/sui-sets-record-for-highest-verified-throughput-settled-to-a-blockchain" rel="noopener noreferrer"&gt;blog Sui&lt;/a&gt;) :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;40 614 180 TPS, mesurés à l'intérieur des &lt;strong&gt;tunnels Sui&lt;/strong&gt; : des canaux d'état et de paiement hors chaîne, programmables, proches des canaux Lightning.&lt;/li&gt;
&lt;li&gt;Un tunnel coûte deux transactions onchain, une à l'ouverture et une à la fermeture, et chaque tunnel fermé est cosigné et vérifiable onchain.&lt;/li&gt;
&lt;li&gt;Plus de 10 000 tunnels ouverts sur le mainnet. CertiK examinera preuves, logs et journaux avant de publier un rapport.&lt;/li&gt;
&lt;li&gt;Le record précédent, 6 086 766 TPS le 4 juillet, avait aussi été mesuré dans des tunnels (&lt;a href="https://www.sui.io/blog/sui-processes-over-6-million-transactions-per-second-in-ai-agent-livestream-experiment" rel="noopener noreferrer"&gt;blog Sui&lt;/a&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sur scène, Abiodun a présenté Sui comme un « plan de confiance » pour les agents IA. Dans le blog, il va plus loin : Sui n'a pas besoin de traiter chaque interaction entre agents, il doit être la couche de confiance de toutes. C'est une affirmation vérifiable. Et comme cette couche de confiance est une blockchain publique, je suis allé la lire.&lt;/p&gt;

&lt;h2&gt;
  
  
  Comment je l'ai reconstruit
&lt;/h2&gt;

&lt;p&gt;Je n'ai pas trouvé de SDK public pour les tunnels, mais l'explorateur de l'événement est public. Sa configuration de production nomme le contrat auquel il parle : un package « arena tunnel » à l'adresse &lt;code&gt;0x9498…7eb1&lt;/code&gt; sur le mainnet, publié le 2 octobre, accompagné d'un registre et d'un jeton de test (MTPS). Tout le reste, ce sont des données publiques de la chaîne.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Récupérer chaque événement émis par le package&lt;/strong&gt; via l'endpoint GraphQL de Sui : 43 327 tunnels créés, 43 037 activés, 40 330 réglés et 868 litiges ouverts entre le 2 et le 9 octobre.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lire chaque enregistrement de règlement.&lt;/strong&gt; Chaque tunnel réglé laisse un &lt;code&gt;SettledOutcomeRecord&lt;/code&gt; qui contient un &lt;code&gt;transcript_root&lt;/code&gt; (un engagement sur chaque étape hors chaîne), un &lt;code&gt;receipt_count&lt;/code&gt;, l'état final et l'horodatage de la dernière mise à jour hors chaîne.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Isoler le run en direct.&lt;/strong&gt; Les créations de tunnels se regroupent en répétitions du 4 au 6 octobre et à 12 h 03 heure de Singapour le jour J. Le run en direct, c'est la salve de 16 h 41 à 16 h 48 (08:41–08:48 UTC). 10 376 tunnels ont été créés dans l'heure qui l'entoure ; 8 657 ont été réglés, et 7 680 ont réellement tourné.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reconstruire la courbe.&lt;/strong&gt; Les reçus de chaque tunnel sont répartis uniformément entre son activation et sa dernière mise à jour, puis additionnés seconde par seconde.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;L'étape 4 repose sur une hypothèse, alors je l'ai vérifiée. Sur les 7 680 tunnels actifs, le débit est presque constant : une médiane de 5 231 reçus par seconde, un 99e centile de 5 933. Quand tous les tunnels tournent à un rythme quasi identique, la répartition uniforme ne coûte presque rien.&lt;/p&gt;

&lt;p&gt;Les 977 autres tunnels réglés se sont fermés avec zéro reçu. 384 d'entre eux affichent en plus un horodatage final qui n'est pas une heure réelle (des valeurs 64 bits apparemment aléatoires) ; je les ai exclus de la courbe. Leurs nonces cumulés ne représentent que 260 358 mises à jour, moins de 0,01 % du total.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ce que montre la chaîne
&lt;/h2&gt;

&lt;p&gt;La courbe reconstruite culmine à &lt;strong&gt;39 862 531 TPS à 08:46:10 UTC&lt;/strong&gt;, soit 1,85 % sous les 40 614 180 officiels. Ma courbe lisse chaque tunnel sur toute sa session, donc un petit écart avec un compteur en direct n'a rien d'étonnant. La montée est plus parlante encore : les points orange sont les chiffres annoncés sur scène, placés selon l'horloge du stream, et ils tombent sur les marches, ou juste à côté, d'une courbe construite uniquement à partir des règlements. Un seul paramètre libre : j'ai calé l'horloge du stream sur l'annonce finale des « 40 millions », les autres points tombent où ils tombent.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fidfh5lmylnahmstkgru5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fidfh5lmylnahmstkgru5.png" alt="Le record de 40 M de TPS de Sui, reconstruit depuis les règlements mainnet. En bleu : TPS effectifs reconstruits par seconde. En orange : chiffres annoncés sur scène." width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Le run est resté au-dessus de 20 millions pendant environ 6 min 30, et proche du pic pendant environ 2 min 30. Il est redescendu par paliers à mesure que les tunnels se fermaient ; le dernier tunnel actif s'est arrêté à 08:53 UTC.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Run en direct, 7 oct. (08:30–09:30 UTC)&lt;/th&gt;
&lt;th&gt;Valeur&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Tunnels créés&lt;/td&gt;
&lt;td&gt;10 376&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tunnels réglés&lt;/td&gt;
&lt;td&gt;8 657&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tunnels ayant tourné (avec reçus)&lt;/td&gt;
&lt;td&gt;7 680, tous à deux parties&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Reçus hors chaîne engagés&lt;/td&gt;
&lt;td&gt;15,24 milliards&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Transactions mainnet portant les événements du package&lt;/td&gt;
&lt;td&gt;11 502&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gas net, remboursements de stockage inclus&lt;/td&gt;
&lt;td&gt;85,74 SUI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Adresses ayant ouvert et financé les 7 680 tunnels actifs&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Adresses ayant ouvert les 977 tunnels à zéro reçu&lt;/td&gt;
&lt;td&gt;81&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Adresses ayant activé des tunnels&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Répétitions comprises, le package a engagé au total 117,4 milliards de reçus hors chaîne.&lt;/p&gt;

&lt;p&gt;En nombre de reçus, le run se répartit ainsi : 79,0 % &lt;code&gt;simple_payments&lt;/code&gt;, 10,8 % &lt;code&gt;flash&lt;/code&gt; (les messages du chat de l'explorateur, a priori), 4,0 % &lt;code&gt;tic_tac_toe&lt;/code&gt;, 3,4 % &lt;code&gt;battleship&lt;/code&gt; et 2,8 % de tunnels dont le résultat est une paire de piles de jetons, probablement les tables de cartes.&lt;/p&gt;

&lt;h2&gt;
  
  
  D'où viennent les 40 millions
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TPS effectifs ≈ tunnels actifs × mises à jour par tunnel et par seconde = 7 680 × ~5 230 ≈ 40 millions&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Chaque tunnel, ce sont deux parties qui s'échangent des mises à jour d'état signées aussi vite que possible. Rien à l'intérieur d'un tunnel ne passe par le consensus : le chiffre affiché dépend donc du nombre de tunnels qui tournent en même temps.&lt;/p&gt;

&lt;p&gt;Les activations montrent comment ce nombre a été construit. Les 7 680 tunnels actifs ont été allumés en dix vagues entre 08:41:52 et 08:46:04 UTC : 256, 256, 256, 512, puis quatre vagues de 1 280, puis 1 024 et 256. Chaque vague correspond à une marche du graphique. Toutes les activations ont été envoyées par l'une de deux adresses.&lt;/p&gt;

&lt;p&gt;C'est exactement à ça que ressemble un passage à l'échelle horizontal : le débit croît linéairement avec le nombre de canaux simultanés, et la couche de base n'a qu'à suivre le rythme des ouvertures et des fermetures. Cela veut aussi dire que « 40 millions » mesure une capacité, pas une demande.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ce que le chiffre n'est pas
&lt;/h2&gt;

&lt;p&gt;Le compte rendu de Sui précise bien que le comptage a eu lieu à l'intérieur des tunnels. Mais trois choses ressortent des données, et elles se perdent facilement quand le chiffre circule seul.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Ce ne sont pas des TPS de couche de base.&lt;/strong&gt; Pendant le run, le commentaire sur scène a comparé le compteur à Visa, puis décrit les quelque 120 validateurs de Sui comme capables de traiter les transactions plus vite que des systèmes centralisés. Les validateurs ont traité les 11 502 transactions qui ont ouvert, financé, activé et réglé les tunnels. Les 15,2 milliards de mises à jour, elles, ont circulé entre les deux parties de chaque tunnel.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ce ne sont pas 40 millions de paiements.&lt;/strong&gt; Un reçu est une mise à jour d'état signée, pas un transfert de valeur. Sur les 6 144 tunnels de paiement du run, 3 080 se sont refermés avec les deux soldes exactement à leur niveau de départ, 100 MTPS chacun. L'un d'eux après 3 132 986 transferts (&lt;a href="https://suiscan.xyz/mainnet/object/0x50ae9c4e97a7e9e8dc399dae55ee538ba842084c12bf1a37c4913f8fd834e279" rel="noopener noreferrer"&gt;enregistrement de règlement&lt;/a&gt;). La compensation est la raison d'être d'un canal ; cela signifie que ce qui est réglé sur Sui, c'est le solde net, pas le compteur.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ce n'est pas le public.&lt;/strong&gt; Abiodun a évoqué environ 10 000 personnes connectées au stream et participant, et le public a bien ouvert des tunnels : 977, depuis 81 adresses. Aucun n'a produit de reçu. Toutes les mises à jour du record viennent des 7 680 paires d'agents ouvertes par une seule adresse, ce qui est précisément le scénario que le test voulait démontrer.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Rien de tout cela ne rend le record faux. Cela le rend précis : Sui a ancré 15,2 milliards de mises à jour hors chaîne, produites à un pic d'environ 40 millions par seconde, pour 86 SUI de gas.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ce qui compte quand on construit des agents
&lt;/h2&gt;

&lt;p&gt;Je construis des wallets d'agents bornés : des plafonds de dépense onchain qui tiennent même quand le raisonnement de l'agent ne tient plus. Vu d'ici, la donnée la plus utile de ce run n'est pas le pic. C'est la façon dont les tunnels se terminent.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quand les deux parties sont là, la fermeture est instantanée.&lt;/strong&gt; Les 7 680 tunnels actifs ont été réglés onchain en médiane 0,43 seconde après leur dernière mise à jour hors chaîne (90e centile 0,64 s, pire cas 1,2 s). Aucun n'a fait l'objet d'un litige.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quand une partie ne se présente jamais, l'argent attend.&lt;/strong&gt; 593 tunnels ont été ouverts, financés et activés, mais la contrepartie n'a jamais envoyé une seule mise à jour. Le runtime a ouvert un litige sur chacun, en général dans les 18 secondes. Chacun a ensuite été réglé exactement 3 heures (526 tunnels) ou 6 heures (67) après l'ouverture du litige, ce qui ressemble à une fenêtre de contestation fixe. Rien n'a été perdu ; tout a été bloqué. Pour un agent, la panne réaliste est une contrepartie qui se tait : budgets et délais doivent être dimensionnés pour cette fenêtre, pas pour la médiane de 0,4 seconde.&lt;/p&gt;

&lt;p&gt;Le même package embarque aussi deux modules que le run n'a jamais utilisés : &lt;code&gt;agent_allowance&lt;/code&gt; (un mandant finance un séquestre et désigne un bénéficiaire et un délégué, avec un débit par seconde, un plafond de dépense, une expiration, une pause et une révocation) et &lt;code&gt;streaming_payment&lt;/code&gt;. Aucun n'a émis le moindre événement. Des tunnels pour la vitesse et une allocation bornée pour l'autorité : cela ressemble à la prochaine étape.&lt;/p&gt;

&lt;p&gt;Les deux autres annonces de Basecamp complètent la pile :&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Couche&lt;/th&gt;
&lt;th&gt;Brique Sui&lt;/th&gt;
&lt;th&gt;État aujourd'hui&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Autorité : que peut dépenser l'agent ?&lt;/td&gt;
&lt;td&gt;Les autorisations de &lt;a href="https://www.sui.io/agentpayments" rel="noopener noreferrer"&gt;Sui Agent Payments&lt;/a&gt; : services autorisés, budget total, plafond par paiement, expiration, appliqués onchain au règlement. Compatible MPP et x402 ; le rail agent annonce actuellement MPP&lt;/td&gt;
&lt;td&gt;Testnet ; appels payants sur invitation ; annuaire et tableau de bord « bientôt ». Les services d'Alibaba Cloud doivent s'y brancher, sans date, tarif ni liste de services pour l'instant (&lt;a href="https://beincrypto.com/sui-alibaba-cloud-ai-agent-payments/" rel="noopener noreferrer"&gt;BeInCrypto&lt;/a&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Débit : à quelle vitesse deux agents transigent-ils ?&lt;/td&gt;
&lt;td&gt;Les tunnels : environ 5 230 mises à jour par seconde et par paire, engagées par une racine de transcription&lt;/td&gt;
&lt;td&gt;Démontré sur le mainnet ; pas de SDK public à ma connaissance&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Preuve : un tiers peut-il vérifier ce qui s'est passé ?&lt;/td&gt;
&lt;td&gt;Le &lt;a href="https://cryptobriefing.com/mysten-labs-google-cloud-verifiable-agent-arbiter/" rel="noopener noreferrer"&gt;Verifiable Agent Arbiter&lt;/a&gt; avec Google Cloud : journaux privés dans le stockage du client, preuves sur Walrus, coordination sur Sui, litiges rejoués via A2A&lt;/td&gt;
&lt;td&gt;Annoncé le 6 octobre ; premiers déploiements en entreprise d'abord, aucun client nommé&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Le plus intéressant, c'est la jointure entre les lignes. Une autorisation plafonne chaque paiement, mais dans un tunnel, un paiement n'est qu'une mise à jour signée parmi des millions. Où les limites d'une autorisation s'appliquent-elles sur un tunnel : à l'ouverture, à chaque mise à jour ou à la fermeture ? C'est la question de conception à laquelle j'aimerais le plus une réponse.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions pour le rapport CertiK
&lt;/h2&gt;

&lt;p&gt;La chaîne confirme déjà le chiffre principal. Voici ce qu'elle ne peut pas trancher seule.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Qu'est-ce qu'une transaction, exactement ?&lt;/strong&gt; Sur 38 243 des 40 330 enregistrements, &lt;code&gt;receipt_count&lt;/code&gt; est égal au nonce final : un reçu correspond donc à une transition d'état. Est-ce bien ce qui a été compté, et sur quelle fenêtre d'échantillonnage les 40 614 180 ont-ils été mesurés ?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Peut-on vérifier une transcription ?&lt;/strong&gt; Chaque règlement engage un &lt;code&gt;transcript_root&lt;/code&gt;. Les journaux hors chaîne seront-ils publiés, pour qu'un tiers puisse recalculer quelques racines au lieu de faire confiance aux compteurs ?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pourquoi aucun tunnel du public n'a-t-il tourné ?&lt;/strong&gt; Les 977 tunnels ouverts par le public se sont tous fermés avec zéro reçu, et 384 portent un horodatage final qui n'est pas une heure réelle. Choix de conception ou limite de capacité ce jour-là ?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;La fenêtre de contestation est-elle configurable ?&lt;/strong&gt; Les tunnels inactifs ont été clôturés après exactement 3 ou 6 heures. Quelle valeur une intégration d'agent pourra-t-elle choisir ?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Le runtime était-il attesté ?&lt;/strong&gt; Le package contient un registre d'attestation pour enclaves Nitro, mais chaque règlement du run porte &lt;code&gt;evidence_class&lt;/code&gt; 0. Si cela signifie « pas d'attestation », mieux vaut le dire : cela change le degré de confiance à accorder au runtime.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Reproduire l'analyse
&lt;/h2&gt;

&lt;p&gt;Tout ce qui précède vient de données publiques du mainnet et tourne avec la bibliothèque standard de Python (le graphique demande matplotlib), sans wallet ni clé d'API. Les scripts sont sur &lt;a href="https://github.com/Makabeez/sui-40m-tps-rebuild" rel="noopener noreferrer"&gt;github.com/Makabeez/sui-40m-tps-rebuild&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Package arena tunnel : &lt;a href="https://suiscan.xyz/mainnet/object/0x9498606724aa4c03dd0e50ce508b3f5555c4915d3f8d0d4525c0f98dd1737eb1" rel="noopener noreferrer"&gt;&lt;code&gt;0x9498606724aa4c03dd0e50ce508b3f5555c4915d3f8d0d4525c0f98dd1737eb1&lt;/code&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Registre &lt;code&gt;0x11c05904ca67cea5658d5bc2a0a0171eafb5d1649bd4f3cd81392b2d11ea571d&lt;/code&gt; ; jeton de test &lt;code&gt;0xcb913929…3eedcd::mtps::MTPS&lt;/code&gt; (0 décimale)&lt;/li&gt;
&lt;li&gt;Endpoint : &lt;code&gt;https://graphql.mainnet.sui.io/graphql&lt;/code&gt;, données récupérées le 10 octobre 2026&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Si les chiffres de CertiK diffèrent des miens, je publierai l'écart.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.sui.io/blog/sui-sets-record-for-highest-verified-throughput-settled-to-a-blockchain" rel="noopener noreferrer"&gt;Blog Sui : record du débit vérifié le plus élevé réglé sur une blockchain&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sui.io/blog/sui-processes-over-6-million-transactions-per-second-in-ai-agent-livestream-experiment" rel="noopener noreferrer"&gt;Blog Sui : 6 millions de TPS lors du livestream du 4 juillet&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=1e-cW4yBdMA" rel="noopener noreferrer"&gt;Sui Basecamp 2026 : livestream du jour 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://tps.dopamint.fun/" rel="noopener noreferrer"&gt;Explorateur MillionTPS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sui.io/agentpayments" rel="noopener noreferrer"&gt;Sui Agent Payments&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://cryptobriefing.com/mysten-labs-google-cloud-verifiable-agent-arbiter/" rel="noopener noreferrer"&gt;Crypto Briefing : Mysten Labs et Google Cloud lancent le Verifiable Agent Arbiter&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://beincrypto.com/sui-alibaba-cloud-ai-agent-payments/" rel="noopener noreferrer"&gt;BeInCrypto : Sui et Alibaba Cloud, paiements d'agents&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>blockchain</category>
      <category>crypto</category>
      <category>performance</category>
    </item>
    <item>
      <title>40 Million TPS, Rebuilt From the Chain</title>
      <dc:creator>Aymen Gnaba</dc:creator>
      <pubDate>Sun, 11 Oct 2026 17:16:41 +0000</pubDate>
      <link>https://dev.to/makabeez/40-million-tps-rebuilt-from-the-chain-452l</link>
      <guid>https://dev.to/makabeez/40-million-tps-rebuilt-from-the-chain-452l</guid>
      <description>&lt;p&gt;&lt;em&gt;What Sui's Basecamp record actually measured, reconstructed from mainnet settlement records.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;p&gt;I didn't wait for the audit. I found the contract behind Sui's 40,614,180 TPS record, pulled every settlement it wrote to mainnet, and rebuilt the throughput curve second by second. &lt;strong&gt;The chain gives a peak of 39.86 million TPS at 08:46:10 UTC on 7 October, within 2% of the official figure.&lt;/strong&gt; The curve tracks the numbers called on stage to within a step.&lt;/p&gt;

&lt;p&gt;So the number holds up. What it measures is more specific than "TPS":&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;One operator, scheduled waves.&lt;/strong&gt; All 7,680 tunnels that produced the record were opened and funded by a single address and switched on in ten waves, every one a multiple of 256 tunnels. Each ran at about 5,230 offchain updates per second. 7,680 × 5,230 ≈ 40 million.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sui anchored it; it didn't execute it.&lt;/strong&gt; The live run's 15.2 billion offchain updates were committed through 11,502 mainnet transactions, for about 86 SUI of net gas.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Closing is where agents should look.&lt;/strong&gt; Tunnels that ran closed onchain about 0.4 s after their last update. 593 tunnels whose counterparty never sent a single update were force-closed only after a fixed 3- or 6-hour window.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One image sums it up: a payment tunnel that made 3,132,986 transfers and closed with both sides holding exactly the 100 MTPS they started with.&lt;/p&gt;

&lt;h2&gt;
  
  
  What was claimed
&lt;/h2&gt;

&lt;p&gt;The record closed Day 1 of Sui Basecamp on the Summit Stage, in a 4:35 pm session led by Mysten Labs co-founder and CPO Adeniyi Abiodun (&lt;a href="https://www.youtube.com/watch?v=1e-cW4yBdMA" rel="noopener noreferrer"&gt;Day 1 livestream&lt;/a&gt;, from about 5:35:00). He said he'd love to go "way past" 12 or 15 million, and noted the audience's median guess was 9.04 million. Then he called the counter as it climbed, and it passed 40 million.&lt;/p&gt;

&lt;p&gt;The official write-up gives the details (&lt;a href="https://www.sui.io/blog/sui-sets-record-for-highest-verified-throughput-settled-to-a-blockchain" rel="noopener noreferrer"&gt;Sui blog&lt;/a&gt;):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;40,614,180 TPS, measured inside &lt;strong&gt;Sui tunnels&lt;/strong&gt;: programmable offchain state and payment channels, similar to Lightning channels.&lt;/li&gt;
&lt;li&gt;A tunnel takes two onchain transactions, one to open and one to close, and every closed tunnel is cosigned and verifiable onchain.&lt;/li&gt;
&lt;li&gt;More than 10,000 tunnels opened on mainnet. CertiK will examine the proofs, logs and journals and publish a report.&lt;/li&gt;
&lt;li&gt;The previous record was 6,086,766 TPS on 4 July, also measured inside tunnels (&lt;a href="https://www.sui.io/blog/sui-processes-over-6-million-transactions-per-second-in-ai-agent-livestream-experiment" rel="noopener noreferrer"&gt;Sui blog&lt;/a&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;On stage Abiodun called Sui "a trust plane for AI agents". In Sui's write-up he goes further: Sui doesn't need to process every agent interaction, it needs to be the trust layer for all of them. That is a testable claim, and the trust layer is a public chain, so I went and read it.&lt;/p&gt;

&lt;h2&gt;
  
  
  How I rebuilt it
&lt;/h2&gt;

&lt;p&gt;I couldn't find a public tunnels SDK, but the event explorer is public. Its production build config names the contract it talks to: an arena-tunnel package at &lt;code&gt;0x9498…7eb1&lt;/code&gt; on mainnet, published on 2 October, with a registry object and a test coin (MTPS) beside it. Everything after that is public chain data.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Crawl every event the package emitted&lt;/strong&gt; through Sui's GraphQL endpoint: 43,327 tunnels created, 43,037 activated, 40,330 settled and 868 disputes opened between 2 and 9 October.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Read every settlement record.&lt;/strong&gt; Each settled tunnel leaves a &lt;code&gt;SettledOutcomeRecord&lt;/code&gt; holding a &lt;code&gt;transcript_root&lt;/code&gt; (a commitment to every offchain step), a &lt;code&gt;receipt_count&lt;/code&gt;, the final state, and the timestamp of the last offchain update.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Isolate the live run.&lt;/strong&gt; Tunnel creations cluster in rehearsals on 4–6 October and at 12:03 SGT on the day. The live run is the burst at 16:41–16:48 SGT (08:41–08:48 UTC). 10,376 tunnels were created in the hour around it; 8,657 settled, and 7,680 of those actually ran.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rebuild the curve.&lt;/strong&gt; Each tunnel's receipts are spread evenly between its activation and its last offchain update, then summed per second.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Step 4 is an assumption, so I checked it. Across the 7,680 tunnels that ran, throughput is almost flat: a median of 5,231 receipts per second, a 99th percentile of 5,933. When every tunnel runs at nearly the same constant rate, spreading receipts evenly loses very little.&lt;/p&gt;

&lt;p&gt;The other 977 settled tunnels closed with zero receipts. 384 of them also report a final timestamp that isn't a real time (random-looking 64-bit values), so I left them out of the curve; their nonces add up to just 260,358 updates, under 0.01% of the total.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the chain shows
&lt;/h2&gt;

&lt;p&gt;The rebuilt curve peaks at &lt;strong&gt;39,862,531 TPS at 08:46:10 UTC&lt;/strong&gt;, 1.85% under the official 40,614,180. Since my curve averages each tunnel over its whole session, a small gap from a live counter is expected. The climb is the more convincing part. The orange dots are the numbers called on stage, placed by stream time, and they sit on or next to the steps of a curve built only from settlement records. There is one free parameter: I pinned the stream clock to the final "40 million" call, and the other dots fall where they fall.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fne4owhq2xs5uk26lhega.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fne4owhq2xs5uk26lhega.png" alt="Sui's 40M TPS run, rebuilt from mainnet settlement records. Blue: reconstructed effective TPS per second. Orange: numbers called on stage." width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The run held above 20 million for about 6.5 minutes and near its peak for about 2.5. It unwound in steps as tunnels closed; the last running tunnel finished at 08:53 UTC.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Live run, 7 Oct (08:30–09:30 UTC)&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Tunnels created&lt;/td&gt;
&lt;td&gt;10,376&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tunnels settled&lt;/td&gt;
&lt;td&gt;8,657&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tunnels that ran (produced receipts)&lt;/td&gt;
&lt;td&gt;7,680, all two-party&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Offchain receipts committed&lt;/td&gt;
&lt;td&gt;15.24 billion&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mainnet transactions carrying the package's events&lt;/td&gt;
&lt;td&gt;11,502&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Net gas, storage rebates included&lt;/td&gt;
&lt;td&gt;85.74 SUI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Addresses that opened and funded the 7,680 running tunnels&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Addresses that opened the 977 zero-receipt tunnels&lt;/td&gt;
&lt;td&gt;81&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Addresses that activated tunnels&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Across every rehearsal and the live run, the package has committed 117.4 billion offchain receipts.&lt;/p&gt;

&lt;p&gt;By receipts, the live run was 79.0% &lt;code&gt;simple_payments&lt;/code&gt;, 10.8% &lt;code&gt;flash&lt;/code&gt; (the explorer's chat messages, as far as I can tell), 4.0% &lt;code&gt;tic_tac_toe&lt;/code&gt;, 3.4% &lt;code&gt;battleship&lt;/code&gt; and 2.8% tunnels whose outcome is a pair of chip stacks, likely the card tables.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where 40 million comes from
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;effective TPS ≈ tunnels running × updates per tunnel per second = 7,680 × ~5,230 ≈ 40 million&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Each tunnel is two parties exchanging signed state updates as fast as they can. Nothing inside a single tunnel touches consensus, so the headline number is set by how many tunnels run at once.&lt;/p&gt;

&lt;p&gt;The activations show how that number was built. The 7,680 running tunnels went live in ten waves between 08:41:52 and 08:46:04 UTC: 256, 256, 256, 512, then four waves of 1,280, then 1,024 and 256. Each wave is a step in the chart. Every activation was sent by one of two addresses.&lt;/p&gt;

&lt;p&gt;That is what horizontal scaling looks like: throughput grows linearly with concurrent channels, and the base layer only has to keep up with opening and closing them. It also means "40 million" is a statement about capacity, not demand.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the number is not
&lt;/h2&gt;

&lt;p&gt;Sui's write-up is clear that the count was measured inside tunnels. Three things follow from the data that are easy to lose when the number travels on its own.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;It is not base-layer TPS.&lt;/strong&gt; During the run, the stage commentary compared the counter with Visa and then described Sui's roughly 120 validators as able to process transactions faster than centralized systems. The validators processed the 11,502 transactions that opened, funded, activated and settled the tunnels. The 15.2 billion updates ran between the two parties of each tunnel.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It is not 40 million payments.&lt;/strong&gt; A receipt is a signed state update, not value moved. Of the 6,144 live payment tunnels, 3,080 closed with both balances exactly where they started, 100 MTPS each. One of them did so after 3,132,986 transfers (&lt;a href="https://suiscan.xyz/mainnet/object/0x50ae9c4e97a7e9e8dc399dae55ee538ba842084c12bf1a37c4913f8fd834e279" rel="noopener noreferrer"&gt;settlement record&lt;/a&gt;). Netting is the whole point of a channel; it means what settles on Sui is the net, not the count.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It is not the audience.&lt;/strong&gt; Abiodun said around 10,000 people on the stream were participating, and the public did open tunnels: 977 of them, from 81 addresses. None of those produced receipts. Every update in the record came from the 7,680 agent pairs opened by one address, which is the scenario the test was built to show.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of this makes the record fake. It makes it precise: Sui anchored 15.2 billion offchain updates, produced at a peak of about 40 million per second, for 86 SUI of gas.&lt;/p&gt;

&lt;h2&gt;
  
  
  What matters if you build agents
&lt;/h2&gt;

&lt;p&gt;I build bounded agent wallets: onchain spending limits that hold even when the agent's reasoning doesn't. From that seat, the most useful data in this run isn't the peak. It is how tunnels end.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When both sides are there, closing is instant.&lt;/strong&gt; All 7,680 running tunnels settled onchain a median of 0.43 seconds after their last offchain update (90th percentile 0.64 s, worst 1.2 s). None of them was disputed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When one side never shows up, money waits.&lt;/strong&gt; 593 tunnels were opened, funded and activated, but the counterparty never sent a single update. The runtime opened a dispute on each, typically within about 18 seconds. Each then settled exactly 3 hours (526 tunnels) or 6 hours (67) after the dispute opened, which looks like a fixed challenge window. Nothing was lost; it was locked. For an agent, a counterparty that goes silent is the realistic failure, so budgets and timeouts have to be sized for that window, not the 0.4-second median.&lt;/p&gt;

&lt;p&gt;The same package also ships two modules the run never used: &lt;code&gt;agent_allowance&lt;/code&gt; (a principal funds an escrow and names a payee and a delegate, with a per-second rate, a spend cap, an expiry, pause and revoke) and &lt;code&gt;streaming_payment&lt;/code&gt;. Neither has emitted an event. Tunnels for speed plus a bounded allowance for authority looks like the next step.&lt;/p&gt;

&lt;p&gt;The other two Basecamp announcements fill in the rest of the stack:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Sui piece&lt;/th&gt;
&lt;th&gt;State today&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Authority: what may the agent spend?&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://www.sui.io/agentpayments" rel="noopener noreferrer"&gt;Sui Agent Payments&lt;/a&gt; grants: allowed services, total budget, per-payment cap, expiry, enforced onchain at settlement. Supports MPP and x402; the agent rail currently advertises MPP&lt;/td&gt;
&lt;td&gt;Testnet; paid calls invite-only; directory and dashboard "coming soon". Alibaba Cloud services are to plug in, with no date, pricing or service list yet (&lt;a href="https://beincrypto.com/sui-alibaba-cloud-ai-agent-payments/" rel="noopener noreferrer"&gt;BeInCrypto&lt;/a&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Throughput: how fast can two agents transact?&lt;/td&gt;
&lt;td&gt;Tunnels: about 5,230 updates per second per pair, committed by a transcript root&lt;/td&gt;
&lt;td&gt;Demonstrated on mainnet; no public SDK that I could find&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Evidence: can a third party check what happened?&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://cryptobriefing.com/mysten-labs-google-cloud-verifiable-agent-arbiter/" rel="noopener noreferrer"&gt;Verifiable Agent Arbiter&lt;/a&gt; with Google Cloud: logs private in the customer's storage, proofs on Walrus, coordinated on Sui; disputes replayed over A2A&lt;/td&gt;
&lt;td&gt;Announced 6 October; initial enterprise deployments first, no customers named&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The interesting part is the seam between the rows. A grant caps spend per payment, but inside a tunnel a payment is one of millions of signed updates. Where a grant's limits bind on a tunnel, at open, per update or at close, is the design question I'd most like answered.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions for the CertiK report
&lt;/h2&gt;

&lt;p&gt;The chain already confirms the headline. These are the questions it can't answer on its own.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;What exactly is one transaction?&lt;/strong&gt; On 38,243 of 40,330 records, &lt;code&gt;receipt_count&lt;/code&gt; equals the final nonce, so one receipt is one state transition. Is that what was counted, and over what sampling window was 40,614,180 measured?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Can anyone check a transcript?&lt;/strong&gt; Each settlement commits a &lt;code&gt;transcript_root&lt;/code&gt;. Will the offchain journals be published so a third party can recompute a few roots, rather than trust the counts?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why did no public tunnel run?&lt;/strong&gt; The 977 tunnels the public opened all closed with zero receipts, and 384 of them carry a final timestamp that isn't a real time. Was that by design, or a capacity limit on the day?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Is the challenge window configurable?&lt;/strong&gt; Idle tunnels were force-closed after exactly 3 or 6 hours. What will an agent integration be able to set it to?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Was the runtime attested?&lt;/strong&gt; The package includes a Nitro-enclave attestation registry, but every live settlement record has &lt;code&gt;evidence_class&lt;/code&gt; 0. If that means no attestation, it is worth saying, because it bears on how much the runtime has to be trusted.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Reproduce it
&lt;/h2&gt;

&lt;p&gt;Everything above comes from public mainnet data and runs with Python's standard library (the chart needs matplotlib), no wallet or API key. The scripts are at &lt;a href="https://github.com/Makabeez/sui-40m-tps-rebuild" rel="noopener noreferrer"&gt;github.com/Makabeez/sui-40m-tps-rebuild&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Arena-tunnel package: &lt;a href="https://suiscan.xyz/mainnet/object/0x9498606724aa4c03dd0e50ce508b3f5555c4915d3f8d0d4525c0f98dd1737eb1" rel="noopener noreferrer"&gt;&lt;code&gt;0x9498606724aa4c03dd0e50ce508b3f5555c4915d3f8d0d4525c0f98dd1737eb1&lt;/code&gt;&lt;/a&gt; (modules &lt;code&gt;anchor&lt;/code&gt;, &lt;code&gt;outcome_records&lt;/code&gt;, &lt;code&gt;ownership&lt;/code&gt;, &lt;code&gt;agent_allowance&lt;/code&gt;, &lt;code&gt;streaming_payment&lt;/code&gt;, &lt;code&gt;attestation_registry&lt;/code&gt;, and wire formats)&lt;/li&gt;
&lt;li&gt;Registry &lt;code&gt;0x11c05904ca67cea5658d5bc2a0a0171eafb5d1649bd4f3cd81392b2d11ea571d&lt;/code&gt;; test coin &lt;code&gt;0xcb913929…3eedcd::mtps::MTPS&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Endpoint: &lt;code&gt;https://graphql.mainnet.sui.io/graphql&lt;/code&gt;, crawled 10 October 2026&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;code&gt;crawl_events.py&lt;/code&gt; pulls every &lt;code&gt;anchor::ArenaTunnel*&lt;/code&gt; event.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;fetch_records.py&lt;/code&gt; reads each &lt;code&gt;SettledOutcomeRecord&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;analyze.py&lt;/code&gt; isolates the live run and rebuilds the per-second curve.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;footprint.py&lt;/code&gt; counts every transaction carrying the package's events (funding included), its sender and gas, and the settlement lag.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If CertiK's numbers differ from mine, I'll post the diff.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.sui.io/blog/sui-sets-record-for-highest-verified-throughput-settled-to-a-blockchain" rel="noopener noreferrer"&gt;Sui blog: Sui sets record for highest verified throughput settled to a blockchain&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sui.io/blog/sui-processes-over-6-million-transactions-per-second-in-ai-agent-livestream-experiment" rel="noopener noreferrer"&gt;Sui blog: 6 million TPS in AI agent livestream experiment&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=1e-cW4yBdMA" rel="noopener noreferrer"&gt;Sui Basecamp 2026: Day 1 livestream&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://tps.dopamint.fun/" rel="noopener noreferrer"&gt;MillionTPS event explorer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sui.io/agentpayments" rel="noopener noreferrer"&gt;Sui Agent Payments&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://cryptobriefing.com/mysten-labs-google-cloud-verifiable-agent-arbiter/" rel="noopener noreferrer"&gt;Crypto Briefing: Mysten Labs and Google Cloud launch Verifiable Agent Arbiter&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://beincrypto.com/sui-alibaba-cloud-ai-agent-payments/" rel="noopener noreferrer"&gt;BeInCrypto: Sui and Alibaba Cloud agent payments&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>blockchain</category>
      <category>web3</category>
    </item>
  </channel>
</rss>
