chore(env): remove stale bootnodes - #463
Merged
Merged
Conversation
davidtaikocha
marked this pull request as ready for review
August 18, 2026 04:29
GETH_BOOT_NODES was narrowed to a single enode, but k8s-configs has no geth-specific bootnode set: every Hoodi execution client consumes the same 3-node `hoodi.elBootnodes` helper (hoodi/templates/_helpers.tpl), whose own comment notes that other clients consume the list without being advertised as bootnodes themselves. Left as-is, Hoodi reth users bootstrap from 3 bootnodes and Hoodi geth users from 1, on the same network over the same discovery protocol. GETH_BOOT_NODES now matches BOOT_NODES byte-for-byte, and both match the rendered `hoodi.elBootnodes` at k8s-configs 633ea7d6. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
k8s-configs 633ea7d6 ("chore(hoodi): replace external preconf bootnode")
was a 1-for-1 swap, not a deletion:
-chainboundP2pBootnode: enode://ea5b8a79鈥35.239.142.239
+l2NodeRethGoDriver0P2pBootnode: enode://4f075635鈥34.58.49.30
Only the removal half had been applied, leaving the sample on a single
bootnode while every Hoodi community-analog template in k8s passes both
(l2-node-reth.yaml:152, l2-node-archived.yaml:255, l2-node-debug.yaml:148).
This one propagates differently from the .env values: P2P_BOOTNODES is
hardcoded here and reaches the container through the ./script:/script
bind mount, so it reaches existing nodes on the next `git pull` with no
.env step to opt out. A fresh node with an empty discv5 table would have
had no entry point into the preconf mesh whenever 34.63.52.157 was down.
P2P_BOOTNODES now matches the rendered l2-node-reth.yaml:152 p2p.bootnodes
byte-for-byte. The self-exclusion note at values.yaml:126 applies only to
go-driver ordinal 0 in-cluster; community nodes are not ordinal 0.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
YoGhurt111
approved these changes
Aug 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
k8s-configs/mainnetconfigurationk8s-configs/hoodiconfigurationWhy
The sample node configuration retained decommissioned legacy nodes and retired external peers after the authoritative k8s configuration removed or rotated them. Community nodes could continue attempting discovery against endpoints that Taiko no longer manages through
k8s-configs.Impact
Mainnet and Hoodi community nodes bootstrap only through enodes that are present in the current Taiko k8s configuration. This changes only bootnode lists; images, ports, and runtime behavior are otherwise unchanged.
Validation
k8s-configsat633ea7d6sh -n script/start-driver.shsh -n script/start-driver-hoodi.shdocker compose config --quietwith the Mainnet sample environmentdocker compose -f docker-compose-hoodi.yml config --quietwith the Hoodi sample environmentgit diff --check