From 33fd60fbce81e93959d2b6225f720c2737d7d8d9 Mon Sep 17 00:00:00 2001 From: Nikolay Vlasov Date: Mon, 17 Aug 2026 19:52:47 +1000 Subject: [PATCH] feat(bnb): bump BSC Geth to v1.7.7 for Pasteur hardfork BSC mainnet activates the Pasteur hardfork (BEP-673) on 2026-08-25 02:30 UTC; all mainnet nodes must run v1.7.7 by then. The version is taken from the config filename, so this renames the config plus its package.json/sample references. No blueprint CLI-flag changes are required: the flags removed or deprecated in the Pasteur line (--multidatabase, --fake-beacon*) and the load-breaking [Eth] EnableBAL config.toml field are not used by the blueprint, and config.toml is fetched fresh from the release. Upgrade replaces the instance per the blueprint's upgrade model. Smoke-tested on BSC mainnet (dev account): v1.7.7 binary downloads and SHA-verifies, release config.toml/genesis apply, --db.engine=pebble is accepted, the node service starts, peers connect, and snap-sync targets the chain head. Build (tsc) and jest (473 tests) pass. --- CHANGELOG.md | 3 ++- .../{bsc-geth-v1.7.3-full.sh => bsc-geth-v1.7.7-full.sh} | 2 +- blueprints/bnb/package.json | 4 ++-- blueprints/bnb/samples/.env-chapel-bsc-geth-full | 2 +- blueprints/bnb/samples/.env-mainnet-bsc-geth-full | 2 +- blueprints/bnb/samples/.env-mainnet-bsc-geth-full-ha | 2 +- 6 files changed, 8 insertions(+), 7 deletions(-) rename blueprints/bnb/configurations/{bsc-geth-v1.7.3-full.sh => bsc-geth-v1.7.7-full.sh} (98%) diff --git a/CHANGELOG.md b/CHANGELOG.md index 618adf34..b9da2f71 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,11 +10,12 @@ ### Changed +- **BNB Chain**: bumped BSC Geth `v1.7.3` → `v1.7.7` for the BSC mainnet **Pasteur hardfork** (activates 2026-08-25 02:30 UTC; mandatory for all mainnet nodes before then). No blueprint CLI-flag changes are needed: the flags removed/deprecated in the Pasteur line (`--multidatabase`, `--fake-beacon*`) and the load-breaking `[Eth] EnableBAL` config.toml field are not used by the blueprint, and `config.toml` is fetched fresh from the release. Requires a fresh deploy per the replace-the-instance upgrade model. - **Ethereum**: bumped patch versions — Nethermind `1.39.2` → `1.39.3`, Erigon `3.5.3` → `3.5.4`, and Prysm `7.1.7` → `7.1.8`. All three are drop-in upgrades within the same release series with no blueprint CLI flag changes; configuration file names and matching `samples/` were updated accordingly. - **Ethereum**: bumped client versions — Geth `1.17.3` → `1.17.4`, Erigon `3.4.3` → `3.5.3`, Prysm `7.1.5` → `7.1.7`, and Besu `26.6.1` → `26.7.0`. Configuration file names and matching `samples/` were updated accordingly. (Nethermind and Teku are covered under Security above.) - **Ethereum**: upgraded the Reth archive configuration to Reth `1.10.2` → `2.4.1` and Lighthouse `8.1.3` → `8.2.1` (`reth-2.4.1-lighthouse-8.2.1-archive.yml`). Reth 2.x makes **Storage V2** the default; there is no in-place upgrade for an existing Reth v1 datadir, so upgrading requires deploying a new node and resyncing (consistent with the blueprint's replace-the-instance upgrade model). Reth 2.2 also enables Discv5 discovery by default. No blueprint CLI flags changed. - **Solana**: Agave `4.1.0-rc.1` → `4.1.2` (prerelease replaced with the stable `4.1.x` line); Frankendancer `0.912.40003` → `0.1006.40100`. The Agave `3.1.14` and `4.0.3` (default) configurations are already current and unchanged. -- **BNB Chain**: BSC Reth `v0.0.10-beta` → `v0.1.1`. `v0.1.1` is a **mandatory** upgrade for the BSC mainnet Pasteur hardfork (activates 2026-08-25); nodes still on an older binary at activation will fork off the canonical chain. `v0.1.1` also **renamed the `--maxpeers` CLI flag to `--max-peers`**, so the `bsc-reth` run command was updated to match (the old flag now aborts startup with `INVALIDARGUMENT`). BSC Geth `v1.7.3` (default) is already current and unchanged. +- **BNB Chain**: BSC Reth `v0.0.10-beta` → `v0.1.1`. `v0.1.1` is a **mandatory** upgrade for the BSC mainnet Pasteur hardfork (activates 2026-08-25); nodes still on an older binary at activation will fork off the canonical chain. `v0.1.1` also **renamed the `--maxpeers` CLI flag to `--max-peers`**, so the `bsc-reth` run command was updated to match (the old flag now aborts startup with `INVALIDARGUMENT`). BSC Geth is bumped to `v1.7.7` separately for the Pasteur hardfork (see above). - **Base**: base/node `v1.1.1` → `v1.2.0` (`base-reth-v1.2.0-full.yml`, via `base_node_tag`). `v1.2.0` is a required Base upgrade that moves base-reth-node to **Storage V2**; new deployments download a V2 snapshot automatically, and because the Base blueprint uses ephemeral instance-store every deploy is a fresh sync. - **Bitcoin**: Bitcoin Core `v31.0` → `v31.1`. diff --git a/blueprints/bnb/configurations/bsc-geth-v1.7.3-full.sh b/blueprints/bnb/configurations/bsc-geth-v1.7.7-full.sh similarity index 98% rename from blueprints/bnb/configurations/bsc-geth-v1.7.3-full.sh rename to blueprints/bnb/configurations/bsc-geth-v1.7.7-full.sh index 9ab4f8b8..85571054 100644 --- a/blueprints/bnb/configurations/bsc-geth-v1.7.3-full.sh +++ b/blueprints/bnb/configurations/bsc-geth-v1.7.7-full.sh @@ -9,7 +9,7 @@ # no args — runs geth with full-node flags (systemd entrypoint) # # The client version is derived from CLIENT_CONFIG (the configuration file -# name, e.g. "bsc-geth-v1.7.3-full.sh" -> "v1.7.3"), which is the single +# name, e.g. "bsc-geth-v1.7.7-full.sh" -> "v1.7.7"), which is the single # source of truth. # # Runtime flags match the 48Club geth.local snapshot requirements. diff --git a/blueprints/bnb/package.json b/blueprints/bnb/package.json index f85c0e7f..efc257ae 100644 --- a/blueprints/bnb/package.json +++ b/blueprints/bnb/package.json @@ -11,10 +11,10 @@ "single-node", "ha-nodes" ], - "defaultConfiguration": "bsc-geth-v1.7.3-full.sh", + "defaultConfiguration": "bsc-geth-v1.7.7-full.sh", "availableConfigurations": [ { - "name": "bsc-geth-v1.7.3-full.sh" + "name": "bsc-geth-v1.7.7-full.sh" }, { "name": "bsc-reth-v0.1.1-full.sh" diff --git a/blueprints/bnb/samples/.env-chapel-bsc-geth-full b/blueprints/bnb/samples/.env-chapel-bsc-geth-full index e2caffc6..f05b0fff 100644 --- a/blueprints/bnb/samples/.env-chapel-bsc-geth-full +++ b/blueprints/bnb/samples/.env-chapel-bsc-geth-full @@ -13,7 +13,7 @@ AWS_REGION="us-east-1" BLOCKCHAIN_PROTOCOL="bnb" DEPLOYMENT_MODE="single-node" BC_NETWORK="chapel" -CLIENT_CONFIG="bsc-geth-v1.7.3-full.sh" +CLIENT_CONFIG="bsc-geth-v1.7.7-full.sh" # Instance Configuration INSTANCE_TYPE="i8g.4xlarge" diff --git a/blueprints/bnb/samples/.env-mainnet-bsc-geth-full b/blueprints/bnb/samples/.env-mainnet-bsc-geth-full index d7eb1917..4ee85236 100644 --- a/blueprints/bnb/samples/.env-mainnet-bsc-geth-full +++ b/blueprints/bnb/samples/.env-mainnet-bsc-geth-full @@ -13,7 +13,7 @@ AWS_REGION="us-east-1" BLOCKCHAIN_PROTOCOL="bnb" DEPLOYMENT_MODE="single-node" BC_NETWORK="mainnet" -CLIENT_CONFIG="bsc-geth-v1.7.3-full.sh" +CLIENT_CONFIG="bsc-geth-v1.7.7-full.sh" # Instance Configuration INSTANCE_TYPE="i8g.4xlarge" diff --git a/blueprints/bnb/samples/.env-mainnet-bsc-geth-full-ha b/blueprints/bnb/samples/.env-mainnet-bsc-geth-full-ha index 73246cf8..519910fa 100644 --- a/blueprints/bnb/samples/.env-mainnet-bsc-geth-full-ha +++ b/blueprints/bnb/samples/.env-mainnet-bsc-geth-full-ha @@ -13,7 +13,7 @@ AWS_REGION="us-east-1" BLOCKCHAIN_PROTOCOL="bnb" DEPLOYMENT_MODE="ha-nodes" BC_NETWORK="mainnet" -CLIENT_CONFIG="bsc-geth-v1.7.3-full.sh" +CLIENT_CONFIG="bsc-geth-v1.7.7-full.sh" # Instance Configuration INSTANCE_TYPE="i8g.4xlarge"