Pour les développeurs / Pour commencer

Pickle Chain pour les développeurs

Un Layer 2 Ethereum qui exécute votre transaction immédiatement, rend une préconfirmation signée, et scelle autour d'elle un bloc ordinaire au format Ethereum. Le gas se paie en ETH, et la surface eth_* standard suffit à MetaMask, Foundry et Hardhat.

Ce que c'est

Pickle fait tourner un séquenceur Rust sur mesure avec revm figé sur Cancun. Quand vous envoyez une transaction, elle s'exécute aussitôt - eth_sendRawTransaction bloque jusqu'à ce que le résultat existe plutôt que de rendre la promesse d'un résultat - et un reçu est disponible dans la cible d'ordonnancement du mini-bloc, environ 10 ms. Un bloc au format Ethereum enveloppant ces mini-blocs est scellé à une cible d'ordonnancement d'environ 250 ms, et c'est ce bloc que portefeuilles et explorateurs traitent comme une confirmation.

Du point de vue de l'outillage, la chaîne est ordinaire là où cela compte le plus : chain ID 78270 sur le réseau de test public que documente cette référence, ETH pour le gas, une limite de gas par bloc de 30 000 000, du JSON-RPC standard, et des en-têtes de bloc au format Cancun. forge, ethers, viem et MetaMask fonctionnent tous contre elle. Elle est aussi inhabituelle là où cela compte, et cela a sa propre page plutôt qu'un paragraphe ici.

Ce que ce n'est pas

Le modèle de confiance, énoncé en entier

  • Ordering: one sequencer orders every transaction. It can reorder and it can censor, and there is no forced-inclusion path from Ethereum.
  • Liveness: if the sequencer stops, mini-blocks stop and the chain halts for new execution. Replicas continue to serve derived history. The sequencer key is held in an on-chain registry and can be rotated, effective the next block.
  • Correctness: there are no fraud or validity proofs. Any replica can detect a divergence between the published data and the committed block hash, and halts when it does; nothing on-chain arbitrates it.
  • Data: everything needed to rebuild the chain is on Ethereum or committed to from Ethereum. A user relies on the operator's honesty, plus the fact that the data needed to check it is public.
  • Bridge: the messenger is a trusted key. It cannot forge or replay a message, but it can delay. Batcher and messenger keys are distinct, enforced at startup.

Pickle ne se présente pas autrement que comme une chaîne à opérateur unique, et cette documentation ne publie aucun chiffre de débit. Les deux nombres de cadence ci-dessus sont des cibles d'ordonnancement - les intervalles que vise le producteur de blocs - et non des garanties de latence ni une affirmation sur le débit. Le scelleur saute un tic en retard plutôt que de rattraper.

Ce n'est pas non plus une équivalence EVM complète, et les écarts sont publiés dans leur propre page plutôt que laissés à découvrir à l'exécution. En résumé : les lectures d'état ignorent le paramètre de bloc, il n'y a pas d'archive, et error.data n'est jamais renseigné, donc votre bibliothèque ne peut pas décoder une erreur personnalisée.

La forme de la chose

Une transaction traverse trois étages, et savoir lequel vous observez fait l'essentiel de ce qui rend cette chaîne lisible :

  • Exécution - immédiate, synchrone avec votre appel RPC. Un revert est connu ici.
  • Préconfirmation - un mini-bloc, signé par le séquenceur, à une cible d'ordonnancement d'environ 10 ms. Votre reçu existe, et son blockNumber est encore null.
  • Confirmation - un bloc EVM, à une cible d'ordonnancement d'environ 250 ms. Là, blockNumber et blockHash sont renseignés.

La finalité est un quatrième événement, séparé : elle survient une fois le lot contenant réglé sur Ethereum. Ce site n'emploie le mot pour rien d'autre.

Votre premier appel

Le réseau de test public répond à https://rpc.picklechain.xyz. Les exemples l'écrivent partout $RPC_URL, pour que la même commande tourne telle quelle contre un nœud à vous :

bash
export RPC_URL=https://rpc.picklechain.xyz

curl -s "$RPC_URL" \
  -X POST -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'

# {"jsonrpc":"2.0","id":1,"result":"0x131be"}

0x131be vaut 78270. L'appel lui-même ne demande ni clé, ni compte, ni en-tête au-delà d'un type de contenu : le nœud n'authentifie rien et répond à quiconque peut l'atteindre. L'ETH de test vient du faucet, une demande par adresse toutes les 24 heures, et l'état peut être remis à zéro sans préavis.

Où aller ensuite

Aucune page ici n'imprime d'adresse de contrat, et c'est délibéré

Un CALL EVM vers un compte sans code réussit. Un swap routé à une adresse où rien n'est déployé ne revert pas : il prend votre ETH et rapporte un succès. Vérifiez donc avec eth_getCode toute adresse qu'on vous a donnée avant de lui envoyer quoi que ce soit.

Les applications de première partie résolvent à l'exécution, depuis la chaîne, chaque adresse qu'elles utilisent plutôt que d'en compiler une, et la couche de prix documente comment. L'explorateur montre ce qui est déployé à une adresse ; il ne vérifie aucune source et ne publie aucun ABI.