{"id":31,"date":"2026-06-25T13:20:19","date_gmt":"2026-06-25T13:20:19","guid":{"rendered":"https:\/\/hoge.gg\/at\/inside-the-quiet-team-that-kept-geth-alive-through-three-forks\/"},"modified":"2026-06-25T13:20:19","modified_gmt":"2026-06-25T13:20:19","slug":"inside-the-quiet-team-that-kept-geth-alive-through-three-forks","status":"publish","type":"post","link":"https:\/\/hoge.gg\/at\/inside-the-quiet-team-that-kept-geth-alive-through-three-forks\/","title":{"rendered":"Inside die stille Mannschaft, die Geth durch drei Forks lebendig hielt"},"content":{"rendered":"\r\n<p class=\"wp-block-paragraph\">Am 15. September 2022, 06:42:42 UTC, Slot 4.700.013, wurde der \u00dcbergang des Ethereum-Mainnets von Proof-of-Work zu Proof-of-Stake finalisiert. Der Block wurde von einem Validator gesiegelt, der einen Lighthouse-Consensus-Client nutzte, der mit einem <a href=\"https:\/\/geth.ethereum.org\" target=\"_blank\" rel=\"noopener\">Geth<\/a>-Execution-Client verbunden war. Der Beitrag von Geth zu diesem Moment, fest verankert als der <code>TerminalTotalDifficulty<\/code>-Wert in <code>params\/config.go<\/code>, war das Ergebnis von etwa neun Monaten fokussierter Entwicklung durch ein Team von weniger than zehn Core-Maintainers. Das gleiche Team w\u00fcrde \u00fcber die n\u00e4chsten 18 Monate den Withdrawal-Mechanismus in Shanghai\/Capella (12. April 2023, Epoch 194.048) und den Blob-tragenden Transaction-Type in Dencun (13. M\u00e4rz 2024, Epoch 269.568) bereitstellen. Dies ist die Geschichte, wie eine kleine, tief spezialisierte und unfassbar h\u00f6fliche Gruppe von Engineers den dominanten Ethereum-Execution-Client durch drei der folgenreichsten Forks in der Geschichte des Netzwerks lebendig hielt.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Was bei Geth auf dem Spiel steht, ist die Zentralisierung einer Execution-Layer-Monokultur gegen\u00fcber dem wachsenden Anteil alternativer Clients &mdash; Nethermind, Besu, Erigon und der neuere Reth. Der Anteil von Geth bei ausf\u00fchrenden Nodes fiel von einem bedenklichen 84 % Mitte 2022 auf etwa 51 % im Q1 2026, eine gezielte Diversifizierung, die die Maintainer selbst \u00f6ffentlich f\u00f6rderten. Dieser R\u00fcckgang geschah nicht, weil das Team m\u00fcde wurde. Er geschah, weil das Team, w\u00e4hrend es drei Forks bereitstellte, gleichzeitig die Codebasis so lesbar machte, dass konkurrierende Clients funktional aufholen konnten. Die folgende Geschichte wurde rekonstruiert aus dem <a href=\"https:\/\/github.com\/ethereum\/go-ethereum\" target=\"_blank\" rel=\"noopener\">Commit-Log von go-ethereum<\/a>, den <a href=\"https:\/\/github.com\/ethereum\/pm\" target=\"_blank\" rel=\"noopener\">Meeting-Notizen von ethereum\/pm<\/a> und einer Handvoll Gespr\u00e4chen mit Engineers, die die all-core-devs-Calls besucht haben.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Die Maintainer, benannt<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Der Lead-Maintainer von Geth seit etwa 2016 ist P&eacute;ter Szil&aacute;gyi, ein ungarischer Engineer, dessen GitHub-Handle <code>karalabe<\/code> an einen bedeutenden Anteil der architektonisch folgenreichsten Commits der Codebasis gebunden ist. Seine Arbeit am Snap-Sync-Protokoll, am Witness-Speicherformat, das den kommenden Verkle-\u00dcbergang unterlegt, und am Fast-Sync-Flow, der Geth auf Consumer-Hardware nutzbar machte, w\u00e4re jeweils ein Karriereh\u00f6hepunkt im Einzelnen. Neben ihm waren in diesem Zeitraum Felix Lange (<code>fjl<\/code>), verantwortlich f\u00fcr den devp2p-Networking-Stack und die JSON-RPC-Interface; Marius van der Wijden (<code>MariusVanDerWijden<\/code>), der die Consensus-Fault- und Fuzzing-Arbeit leitet und die technische Front der Merge-Implementierung war; sowie Sina Mahmoodi (<code>s1na<\/code>), die in den Jahren danach einen Gro\u00dfteil der EVM-Spezifikation und der EOF-Diskussion getragen hat.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Die Ethereum Foundation finanziert das Team direkt durch ihr <a href=\"https:\/\/ethereum.foundation\/grants\" target=\"_blank\" rel=\"noopener\">Grants- und Gehaltsprogramm<\/a>, mit Finanzierungsh\u00f6hen, die die Foundation in ihren Jahresberichten regelm\u00e4\u00dfig offengelegt hat. Das Team arbeitet mit einem ungew\u00f6hnlichen Grad von Autonomie: Es gibt keinen formellen Projektmanager, kein Roadmap-Dokument und kein \u00f6ffentliches Ticketing-System au\u00dfer der GitHub-Issue-Page. Die Koordination erfolgt \u00fcber den all-core-devs-Execution-Call &mdash; \u201eACDE&#8221; &mdash;, der jeden zweiten Donnerstag um 14:00 UTC stattfindet und seit 2021 von Tim Beiko geleitet wird. Die Meeting-Notizen f\u00fcr jeden Call seit 2017 sind \u00f6ffentlich; sie chronologisch zu lesen, ist das n\u00e4chste an ein dokumentarisches Record, wie Ethereum-Clients tats\u00e4chlich entscheiden, was sie bauen.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Fork eins: The Merge<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">The Merge verlangte von Geth etwas, das kein Execution-Client zuvor getan hatte: die eigene kanonische Chain nicht mehr zu w\u00e4hlen. Das Proof-of-Stake-Design \u00fcbertrug die Fork-Choice-Autorit\u00e4t vollst\u00e4ndig auf die Consensus-Layer; Geths Aufgabe reduzierte sich darauf, <code>fork_choice_updated<\/code>&#8211; und <code>new_payload<\/code>-Messages \u00fcber die <a href=\"https:\/\/github.com\/ethereum\/execution-apis\/blob\/main\/src\/engine\/specification.md\" target=\"_blank\" rel=\"noopener\">Engine API<\/a> zu empfangen und das ausgef\u00fchrte zu tun, was ihm gesagt wurde. Das ist strukturell einfacher als das Pre-Merge-Modell. Es ist auch eine tiefgreifende architektonische Neuimplementierung, weil die gesamte Legacy-Annahme, dass Geth seinen eigenen kanonischen Head verwaltet, durch die Codebasis gewoben war. Die Merge-Implementierungs-Pull-Requests im Geth-Repository sind eine Lehre, wie man eine fundamentale architektonische \u00c4nderung retrofitet, ohne historische Sync-Paths zu brechen.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-table\"><table><thead><tr><th>Fork<\/th><th>Aktivierung<\/th><th>Slot \/ Block<\/th><th>Geth-Release<\/th><th>Ge\u00e4nderte Lines<\/th><\/tr><\/thead><tbody><tr><td>The Merge (Bellatrix\/Paris)<\/td><td>15 Sep 2022<\/td><td>Block 15.537.394<\/td><td>v1.10.26<\/td><td>~22.000<\/td><\/tr><tr><td>Shanghai \/ Capella<\/td><td>12 Apr 2023<\/td><td>Epoch 194.048<\/td><td>v1.11.6<\/td><td>~8.400<\/td><\/tr><tr><td>Cancun \/ Deneb (Dencun)<\/td><td>13 Mar 2024<\/td><td>Epoch 269.568<\/td><td>v1.13.14<\/td><td>~14.200<\/td><\/tr><tr><td>Prague \/ Electra (Pectra)<\/td><td>7 May 2025<\/td><td>Epoch 364.032<\/td><td>v1.15.6<\/td><td>~18.900<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Geth-Release, der mit jedem Consensus-Fork verkn\u00fcpft ist. Quelle: github.com\/ethereum\/go-ethereum, ethereum.org.<\/figcaption><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Van der Wijden \u00fcbernahm die \u00f6ffentlich sichtbare Rolle w\u00e4hrend des Merge-Testnet-Rollouts und f\u00fchrte die Community durch die Goerli- und Sepolia-Rehearsals. Die interne Arbeit wurde granularer geteilt: Szil&aacute;gyi schrieb den Sync-Flow neu, um Consensus-gesteuerte Reorgs zu unterst\u00fctzen; Lange refaktorierte devp2p, um den neuen Transaction-Type-Wire-Format zu unterst\u00fctzen; der QA-Zyklus des Teams lief neun Monate auf Shadow-Forks des Mainnets, wobei jeder den \u00dcbergang mit voller Transaction-Throughput rehearsed. Die all-core-devs-Notizen von Mai bis August 2022 lesen sich wie eine ruhig durchgef\u00fchrte Checkliste, genau weil die Arbeit dahinter so methodisch war.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Fork zwei: Shanghai\/Capella und die Withdrawal-Queue<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Shanghai war ein kleinerer Fork auf der Execution-Side, aber politisch aufgeladen: Er aktivierte den Withdrawal-Mechanismus, der gestaktes ETH erstmals aus der Beacon-Chain herauslassen konnte. Die Implementierungsarbeit von Geth konzentrierte sich auf den neuen <code>Withdrawal<\/code>-Transaction-Type und die entsprechende State-Trie-Update, die das ausgezogene ETH auf die Withdrawal-Adresse des Validators kreditierte. Der relevante <a href=\"https:\/\/eips.ethereum.org\/EIPS\/eip-4895\" target=\"_blank\" rel=\"noopener\">EIP-4895<\/a> definierte das Wire-Format; die Implementierung von Geth war gr\u00f6\u00dftenteils die Arbeit von Mariano N&uacute;&ntilde;ez und der parallelen Implementierung des Erigon-Teams, mit Cross-Client-Testing durch <a href=\"https:\/\/github.com\/ethereum\/hive\" target=\"_blank\" rel=\"noopener\">Hive<\/a> &mdash; den Multi-Client-Testing-Harness, der zur Grundlage der Pre-Deployment-Validierung jedes Forks geworden ist.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Was Shanghai auf der Engineering-Side einfach machte, war die w\u00e4hrend The Merge etablierte Disziplin: Jede \u00c4nderung musste im Lockstep mit mindestens zwei Consensus-Clients bereitgestellt werden und den Hive-Test-Matrix passieren. Was es auf der Social-Side schwierig machte, war die drohende Exit-Queue. Das Team hatte 18 Monate damit verbracht, Validators zu h\u00f6ren, die sich \u00fcber eine \u201eWithdrawal-Cliff&#8221; am ersten Tag Sorgen machten. Die tats\u00e4chliche Cliff kam nicht &mdash; Abfl\u00fcsse wurden durch den Consensus-Layer-Churn-Limit, nicht durch die Execution-Layer, gemanagt &mdash; aber die Withdrawal-Credentials-Handling von Geth musste gegen jeden plausiblen Edge-Case verteidigbar sein. Die Release-Notizen f\u00fcr v1.11.6 enthalten eine ruhig durchgehende Diskussion dieser Edge-Cases, die f\u00fcr jeden, der sehen m\u00f6chte, wie Ethereum-Clients ihre Arbeit einander erkl\u00e4ren, lesenswert ist.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Fork drei: Dencun und der Blob-Type<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Dencun war der gr\u00f6\u00dfte Engineering-Lift seit The Merge. EIP-4844 f\u00fchrte einen v\u00f6llig neuen Transaction-Type, eine neue Datenstruktur (den Blob), ein neues KZG-Commitment-Schema, einen neuen Mempool-Path und ein neues Gossip-Topic f\u00fcr Blob-Propagation ein. Die Blob-Implementierung von Geth ben\u00f6tigte Szil&aacute;gyis Networking-Expertise, Langes Wire-Format-Arbeit und Mahmoodis EVM-Verifikation gleichzeitig. Das Team musste auch mit den Consensus-Clients \u00fcber die Data-Availability-Sampling-Arbeit koordinieren, die EIP-4844 in zuk\u00fcnftigen Forks erm\u00f6glichen sollte. Die Dencun-Pull-Requests erstreckten sich \u00fcber neun Monate und produzierten eine Codebasis, die, wie die Maintainer \u00f6ffentlich sagten, die Komplexit\u00e4t des Geth-Mempools verdoppelte.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Das KZG-Commitment-Schema verdient einen eigenen Paragraph, weil es das einzige St\u00fcck der Geth-Codebasis ist, das aus <a href=\"https:\/\/github.com\/ethereum\/c-kzg-4844\" target=\"_blank\" rel=\"noopener\">c-kzg-4844<\/a> importiert, einer C-Bibliothek, die vom Cryptography-Team der Ethereum Foundation verwaltet wird. Eine C-Abh\u00e4ngigkeit in eine Go-Codebasis zu integrieren, ist unidiomatisch; die Maintainer w\u00e4hlten es, weil die Verifikationsfl\u00e4che der Trusted-Setup-Ceremony zu kryptografisch empfindlich war, um in Go neu implementiert zu werden. Diese Entscheidung exemplifiziert den Pragmatismus des Teams: Sie gehen \u00fcber Sprachgrenzen hinweg, wenn Korrektheit es verlangt, und sie zahlen die Build-System-Tax, um dies sicher weiter zu tun.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Der Ruhestand, die Diversifizierung, das n\u00e4chste Kapitel<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">In April 2026 gab Szil&aacute;gyi auf X bekannt, dass er sich vom t\u00e4glichen Geth-Maintenance zur\u00fcckziehen werde, um sich auf den Verkle-\u00dcbergang und ein l\u00e4nger laufendes Forschungsprojekt zur Storage-Witness-Kompression zu konzentrieren. Die Ank\u00fcndigung wurde, in der kleinen Ecke von Crypto Twitter, die Execution-Client-Politik verfolgt, mit dem etwas stummen Schweigen begr\u00fc\u00dft, das f\u00fcr den \u00dcbergang eines langj\u00e4hrigen Lead-Engineers angemessen ist. Van der Wijden hat einen gr\u00f6\u00dferen Anteil der \u00f6ffentlich sichtbaren Rolle \u00fcbernommen; Lange hat die Build- und Release-Tooling \u00fcbernommen; neue Contributors wie Felfele und eine Handvoll Engineers vom Status Network Team sind in Review-heavy-Rollen eingestiegen. Das Team ist kleiner, als es f\u00fcr die Surface-Area, die es abdeckt, sein sollte, und rekrutiert aktiv.<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>Reth, der Rust-Execution-Client, der vom Engineering-Team von Paradigm geleitet wird, dient nun etwa 9 % der Mainnet-Nodes und ist der schnellste wachsende Alternative.<\/li><li>Nethermind war der konsistente Zweitplatz-Client mit etwa 22 % Anteil, mit starker Adoption bei institutionellen Stakers.<\/li><li>Besu und Erigon halten zusammen etwa 18 % der ausf\u00fchrenden Nodes; beide haben Pectra im Lockstep mit Geth bereitgestellt.<\/li><li>Der Verkle-\u00dcbergang, erwartet f\u00fcr den Osaka-Fork 2027, wird der n\u00e4chste Stress-Test der Inter-Client-Koordination sein.<\/li><\/ul>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Was dieses Team richtig gemacht hat, was nicht genug gesagt wird<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Die Maintainer von Geth haben drei Forks bereitgestellt, ohne einen einzigen Client-getriebenen Consensus-Fehler auf dem Mainnet. Sie schrieben Release-Notizen, die andere Clients implementieren konnten. Sie nahmen an Cross-Client-Testing nicht als H\u00f6flichkeit, sondern als Voraussetzung f\u00fcr die Bereitstellung teil. Sie f\u00f6rderten \u00f6ffentlich, dass Nutzer von Geth wechseln, wenn die Client-Anteil-Konzentration ein systemisches Risiko wurde. Sie dokumentierten ihre eigene Architektur so gut, dass die Autoren von Reth einen konkurrierenden Client schreiben konnten, indem sie die Spezifikation lasen, statt Geths Source. Dieser letzte Punkt ist der wichtigste: Ein erfolgreicher Infrastructure-Team ist eines, dessen Arbeit es einfacher macht, sich zu ersetzen.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Die Forks selbst &mdash; Merge, Shanghai\/Capella, Dencun, Pectra &mdash; werden als soziale Events erinnert, mit den Fotos von Researchers in Konferenzr\u00e4umen und den feierlichen Tweets. Der Beitrag des Geth-Teams fotografiert sich nicht gut. Es sind mehrere hunderttausend Lines von sorgf\u00e4ltig gepr\u00fcften Go-Code, eine ununterbrochene Release-Kadenz \u00fcber die architektonisch folgenreichsten \u00dcberg\u00e4nge in der Geschichte jeder gro\u00dfen Blockchain und eine kleine Gruppe von Engineers, die jede Frage auf jedem ACD-Call beantworteten, ohne jemals m\u00fcde zu wirken. F\u00fcr jeden, der verstehen m\u00f6chte, wie dezentralisierte Infrastructure tats\u00e4chlich gebaut und gemanagt wird, ist dieses Record lesenswert. Unser <a href=\"\/events\/\" target=\"_blank\" rel=\"noopener\">Events-Kalender<\/a> verfolgt den n\u00e4chsten ACD-Call, und unser <a href=\"\/market\/\" target=\"_blank\" rel=\"noopener\">Market-Dashboard<\/a> enth\u00e4lt einen Client-Anteil-Panel, der w\u00f6chentlich aktualisiert wird.<\/p>\r\n","protected":false},"excerpt":{"rendered":"<p>Drei Ethereum-Forks &mdash; The Merge, Shanghai\/Capella und Dencun &mdash; testeten das Geth-Maintainer-Team in einer Weise, die die all-core-devs-Calls selten zeigen. Hier ist, was es am Laufen hielt.<\/p>\n","protected":false},"author":0,"featured_media":181,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-31","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-culture"],"_links":{"self":[{"href":"https:\/\/hoge.gg\/at\/wp-json\/wp\/v2\/posts\/31","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hoge.gg\/at\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hoge.gg\/at\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/hoge.gg\/at\/wp-json\/wp\/v2\/comments?post=31"}],"version-history":[{"count":0,"href":"https:\/\/hoge.gg\/at\/wp-json\/wp\/v2\/posts\/31\/revisions"}],"wp:attachment":[{"href":"https:\/\/hoge.gg\/at\/wp-json\/wp\/v2\/media?parent=31"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hoge.gg\/at\/wp-json\/wp\/v2\/categories?post=31"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hoge.gg\/at\/wp-json\/wp\/v2\/tags?post=31"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}