Skip to content

chore(env): remove stale bootnodes - #463

Merged
davidtaikocha merged 3 commits into
mainfrom
codex/sync-bootnodes-with-k8s-configs
Aug 18, 2026
Merged

chore(env): remove stale bootnodes#463
davidtaikocha merged 3 commits into
mainfrom
codex/sync-bootnodes-with-k8s-configs

Conversation

@davidtaikocha

Copy link
Copy Markdown
Member

Summary

  • remove Mainnet execution and driver bootnodes that are absent from the current k8s-configs/mainnet configuration
  • remove Hoodi execution, Geth, and driver bootnodes that are absent from the current k8s-configs/hoodi configuration
  • retain only exact enode identities currently published by Taiko-managed k8s configuration

Why

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

  • exact full-enode subset check against local k8s-configs at 633ea7d6
  • sh -n script/start-driver.sh
  • sh -n script/start-driver-hoodi.sh
  • docker compose config --quiet with the Mainnet sample environment
  • docker compose -f docker-compose-hoodi.yml config --quiet with the Hoodi sample environment
  • git diff --check

@davidtaikocha davidtaikocha changed the title chore(bootnodes): align with k8s configs chore(bootnodes): remove stale bootnodes Aug 18, 2026
@davidtaikocha
davidtaikocha marked this pull request as ready for review August 18, 2026 04:29
@davidtaikocha davidtaikocha changed the title chore(bootnodes): remove stale bootnodes chore(hoodi,mainnet): remove stale bootnodes Aug 18, 2026
@davidtaikocha davidtaikocha changed the title chore(hoodi,mainnet): remove stale bootnodes chore(env): remove stale bootnodes Aug 18, 2026
davidtaikocha and others added 2 commits August 18, 2026 12:47
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>
@davidtaikocha
davidtaikocha merged commit 26f14ec into main Aug 18, 2026
2 checks passed
@davidtaikocha
davidtaikocha deleted the codex/sync-bootnodes-with-k8s-configs branch August 18, 2026 07:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants