What changed, and why it matters
This commit is a small cleanup of internal developer scripts. It replaces direct calls to set the Bitcoin test network with a single call that asks the configuration object which chain to use. There is no user-facing change and no security issue.
No security action needed. Treat as ordinary code maintenance.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The patch refactors four helper scripts under electrum/scripts/ to use config.get_selected_chain().set_as_network() instead of directly invoking constants.BitcoinTestnet.set_as_network() or leaving it commented out. This unifies how testnet/mainnet chain selection is applied in these scripts and removes a manual two-step pattern. The change is purely structural and does not alter network parameters, validation logic, or exposed interfaces.
Changed components
electrum/scripts/ln_features.pyelectrum/scripts/quick_start.pyelectrum/scripts/servers.pyelectrum/scripts/update_default_servers.pyInspect captured patch +4 / −5
diff --git a/electrum/scripts/ln_features.py b/electrum/scripts/ln_features.py
index 8e99290..ec9e706 100644
--- a/electrum/scripts/ln_features.py
+++ b/electrum/scripts/ln_features.py
@@ -34,6 +34,7 @@ PRESYNC = False # should we sync the graph or take it from an already synced da
config = SimpleConfig({"testnet": IS_TESTNET, "verbosity": VERBOSITY})
+config.get_selected_chain().set_as_network()
configure_logging(config)
loop, stopping_fut, loop_thread = create_and_start_event_loop()
@@ -41,8 +42,6 @@ loop, stopping_fut, loop_thread = create_and_start_event_loop()
# takes some time
time.sleep(2)
-if IS_TESTNET:
- constants.BitcoinTestnet.set_as_network()
daemon = Daemon(config, listen_jsonrpc=False)
network = daemon.network
assert network.asyncio_loop.is_running()
diff --git a/electrum/scripts/quick_start.py b/electrum/scripts/quick_start.py
index a7fba0d..47115ef 100755
--- a/electrum/scripts/quick_start.py
+++ b/electrum/scripts/quick_start.py
@@ -16,7 +16,7 @@ from electrum.util import create_and_start_event_loop, log_exceptions
loop, stopping_fut, loop_thread = create_and_start_event_loop()
config = SimpleConfig({"testnet": True}) # to use ~/.electrum/testnet as datadir
-constants.BitcoinTestnet.set_as_network() # to set testnet magic bytes
+config.get_selected_chain().set_as_network()
daemon = Daemon(config, listen_jsonrpc=False)
network = daemon.network
assert network.asyncio_loop.is_running()
diff --git a/electrum/scripts/servers.py b/electrum/scripts/servers.py
index 26d479e..215950b 100755
--- a/electrum/scripts/servers.py
+++ b/electrum/scripts/servers.py
@@ -8,8 +8,8 @@ from electrum.util import create_and_start_event_loop, log_exceptions
from electrum import constants
# testnet?
-#constants.BitcoinTestnet.set_as_network()
config = SimpleConfig({'testnet': False})
+config.get_selected_chain().set_as_network()
loop, stopping_fut, loop_thread = create_and_start_event_loop()
network = Network(config)
diff --git a/electrum/scripts/update_default_servers.py b/electrum/scripts/update_default_servers.py
index 2f4bacf..d2d7f1f 100755
--- a/electrum/scripts/update_default_servers.py
+++ b/electrum/scripts/update_default_servers.py
@@ -37,8 +37,8 @@ def get_newly_added_servers(fname1, fname2=None):
# testnet?
-#constants.BitcoinTestnet.set_as_network()
config = SimpleConfig({'testnet': False})
+config.get_selected_chain().set_as_network()
loop, stopping_fut, loop_thread = create_and_start_event_loop()
network = Network(config)
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.