Tým Protocol DevOps z Ethereum Foundation představil nový testnet Platåberget. Je to první veřejně přístupné testovací prostředí pro upgrade Glamsterdam, jehož název vznikl spojením Gloas a Amsterdam. Upgrade přináší změny, které rozbijí zpětnou kompatibilitu i pro vývojáře aplikací. Nejvíc zasáhnou nástroje, které počítají s pevně daným maximálním gas limitem, tedy peněženky, indexery a odhadovače poplatků. Ty bude nutné upravit, a proto vývojáři vyzývají komunitu, aby příležitost k testování využila včas.
Dosavadní devnety fungovaly jen krátce. Platåberget má naopak běžet několik měsíců. Komunita tak získá stabilní prostředí, kde může zkoušet Ethereum po upgradu Glamsterdam a hledat chyby dřív, než se upgrade dostane na dlouhodobé testnety Sepolia a Hoodi.
Co upgrade Glamsterdam přináší
Glamsterdam výrazně mění konsensuální i exekuční vrstvu. Nejzásadnější novinkou je zabudované oddělení navrhovatele a stavitele bloků (Enshrined Proposer-Builder Separation, ePBS). Mění se tím způsob, jakým se bloky sestavují, navrhují a ověřují, a přibývá nový tok builder API a kontroly včasnosti payloadu (PTC). S dopady musí počítat veškerá infrastruktura napojená na produkci a validaci bloků. Druhou velkou změnou jsou vynucené přístupové seznamy na úrovni bloku (Block-Level Access Lists, BAL). Zaznamenávají, ke kterým místům stavu se v bloku přistupovalo a jaké změny po transakcích nastaly. Ukládají se odděleně od těla bloku a exekuční klienti si je mohou vyměňovat přes protokol eth/71.
Upgrade dále obsahuje koordinovaný balík změn cen gasu, který míří k minimu zhruba 200 milionů gasu na blok. Maximální velikost nasazeného kontraktu roste z 24 KiB na 64 KiB a maximální velikost initcode ze 48 KiB na 128 KiB. Přibývají také dopředně kompatibilní datové struktury konsensu. Úplný seznam zahrnutých EIP je uveden v meta EIP-7773.
Platåberget má poměrně malou, ale veřejně otevřenou sadu validátorů. Kdokoli tak může vložit depozit za nového validátora a vyzkoušet si postupy pro validátorské i builderské depozity. Protože ePBS představuje velký zásah do konsensuální vrstvy, chtějí vývojáři dát dostatek prostoru k testování sólo stakerům, projektům DVT, autorům vlastního softwaru i velkým operátorům. Fork Glamsterdam byl na testnetu naplánován na 20. srpna, aby zbyl čas na depozity a přípravu na přechod.
Změny cen gasu se dotknou mnohem širšího okruhu lidí, protože ovlivní každou peněženku, indexer a odhadovač poplatků v síti. Vývojáři proto doporučují zjistit, které nástroje nebo předpoklady ve vlastním systému přestanou fungovat, a to ještě před spuštěním forku na mainnetu.
Jak se k Platåbergetu připojit
Souhrn zahrnutých EIP, podpory jednotlivých klientů a stavu spuštění najdete na stránce s prostředky k Platåbergetu na webu Forkcast. Specifikace devnet-8 pak uvádí síťová nastavení, konfigurační hodnoty, bootnody a informace o vydáních klientů. Web plataberget.dev umožňuje nastavit exekučního i konsensuálního klienta jedním kliknutím přes funkci Add Network a faucet rozdává testovací ETH na depozity a poplatky.
Validátorské i builderské depozity může veřejnost zadávat přes explorer Dora. Automatický stake se nepřiděluje předem několika subjektům. Genesis sada validátorů vznikne z veřejných depozitů a v genesis bloku je jen část ETH, která pomůže síť rozběhnout. Vydání verzí pro Platåberget jsou u klientů volitelná, a dokud klientské týmy nepřipraví oficiální tagovaná vydání, doporučuje se používat kontejnerové obrazy od ethPandaOps. Na konsensuální vrstvě jsou k dispozici pro Lighthouse, Lodestar, Nimbus, Prysm, Teku a Grandine, na exekuční vrstvě pro Besu, Geth, Erigon, Nethermind, Reth, Nimbus EL a Ethrex.
Chyby a problémy se specifikací je nejlepší hlásit na Discordu Ethereum R&D. Kdo Discord používat nechce, může využít repozitáře specifikací pro konsensus, exekuci, execution-apis, builder-specs a beacon-APIs.
Konec jednotné ceny 21 000 gasu za převod
Pro vývojáře aplikací jsou nejdůležitější změny cen gasu. Vývojáři znovu zdůrazňují, že každý nástroj závislý na pevně stanoveném maximálním gas limitu přestane fungovat a musí se aktualizovat. Právě tento typ změny nejspíš zaskočí navazující nástroje, a proto Ethereum Foundation stojí o to, aby na Platåbergetu testovali nejen provozovatelé infrastruktury, ale také vývojáři dApps a peněženek.
Nejde přitom jen o blokový gas limit. Mění se i ceny jednotlivých operací a EIP-8037 zavádí samostatnou dimenzi tzv. stavového gasu pro operace, které vytvářejí nový stav. Založení účtu, nasazení kódu nebo zápis do nového úložného slotu se nově účtuje pevnou cenou za bajt stavu (CPSB), a to až za běhu, nikoli předem. Obyčejný převod ETH proto už nemusí stát vždy přesně 21 000 gasu. Převod na existující účet stojí dál 21 000 gasu, které se nově skládají z položek TX_BASE_COST, COLD_ACCOUNT_ACCESS a TX_VALUE_COST. Při odeslání prostředků na účet, který ještě neexistuje, se ale za běhu přičte stavový gas ve výši STATE_BYTES_PER_NEW_ACCOUNT × CPSB. Každý systém, který předpokládá, že 21 000 gasu pokryje jakýkoli převod, nebo při odhadu počítá jen s jednou dimenzí gasu, je třeba přepracovat. Podrobnosti popisují EIP-2780 (rozložené vnitřní náklady) a EIP-8038 (zdražení přístupu ke stavu).
Jakmile se zpětná vazba promítne do klientů a specifikací, má do měsíce následovat devnet bez finality, který prověří patologické scénáře konsensu. Až budou devnety nějakou dobu stabilní, projdou forkem Glamsterdam i dlouhodobé testnety Sepolia a Hoodi. Po jejich úspěšném a stabilním přechodu přijde na řadu mainnet Etherea. Průběh lze podrobně sledovat na Discordu Ethereum R&D, na hovorech All Core Devs, v trackeru upgradu Glamsterdam na Forkcastu nebo v repozitáři devnetů od ethPandaOps na GitHubu.
Zdroj: blog.ethereum.org
