fix(lux-mainnet/luxd-startup): correct C-Chain RLP wipe UUID + bump sentinel v3 → v4

Real mainnet C-Chain blockchainID is NbWZbwJjFC8WWZtWpkbxvAcyQhtvkvpLLb9bcuNXBBmLuSVWJ
(verified via platform.getBlockchains on luxd-0). The prior wipe path
cjhijarXPWx9... was wrong — that UUID never existed on disk so the v3
wipe was a no-op and admin_importChain ran against an uninitialized DB.
Sentinel v3 → v4 forces the wipe + import to re-fire on next boot of
luxd-0.

Pre-fix state (verified 2026-06-01 23:00 UTC):
- /data/.cchain_rlp_imported_v3 present (touched May 20 — import never
  actually ran)
- /data/chainData/network-1/NbWZbwJjFC8WWZtWpkbxvAcyQhtvkvpLLb9bcuNXBBmLuSVWJ/db/ empty
- info.isBootstrapped chain=C → false
- curl /ext/bc/C/rpc eth_blockNumber → HTTP 4xx (chain not initialized)

Post-restart-of-luxd-0 expected:
- Wipe deletes the empty chainData/UUID dir
- ADMIN_NEEDED=true → --api-admin-enabled=true
- After luxd healthy: admin_importChain called against /data/lux-mainnet-96369.rlp
  (1.2GB → ~hours of import time)
- Sentinel .cchain_rlp_imported_v4 written on completion

This is a luxd-0 only operation (POD_INDEX gating — actually NOT gated
in the current script; both blocks run on every pod). Verify: the
RLP file only exists on luxd-0 (seed-restore source) — other pods
will fail the "[ -f \"$RLP_FILE\" ]" check and skip the import block.

Refs: SWARM-MN runbook step "Tenant import C-Chain"
This commit is contained in:
Hanzo AI
2026-06-01 16:22:38 -07:00
parent 63d91cac43
commit 57f0119d98
+11 -5
View File
@@ -30,18 +30,24 @@ data:
# ONE-TIME C-Chain RLP import
CCHAIN_IMPORT_SENTINEL="/data/.cchain_rlp_imported_v3"
# UUID corrected 2026-06-01: real C-Chain blockchainID on mainnet is
# NbWZbwJjFC8WWZtWpkbxvAcyQhtvkvpLLb9bcuNXBBmLuSVWJ
# (was wrongly hand-typed as cjhijarXP... — that UUID never existed
# so the v3 wipe was a no-op and admin_importChain ran against an
# uninitialized DB). Sentinel bumped v3 → v4 to re-fire on next boot.
CCHAIN_IMPORT_SENTINEL="/data/.cchain_rlp_imported_v4"
CCHAIN_BLOCKCHAIN_ID="NbWZbwJjFC8WWZtWpkbxvAcyQhtvkvpLLb9bcuNXBBmLuSVWJ"
RLP_FILE="/data/lux-mainnet-96369.rlp"
NEED_IMPORT="false"
if [ ! -f "$CCHAIN_IMPORT_SENTINEL" ] && [ -f "$RLP_FILE" ]; then
echo "[IMPORT] Wiping C-Chain data and setting up RLP import..."
rm -rf /data/chainData/network-1/cjhijarXPWx9ABpKJmhVvp5N3mfsNiX3u1Qpnas8cxTXwJAmK
echo "[IMPORT] Wiping C-Chain data ($CCHAIN_BLOCKCHAIN_ID) and setting up RLP import..."
rm -rf "/data/chainData/network-1/${CCHAIN_BLOCKCHAIN_ID}"
NEED_IMPORT="true"
echo "[IMPORT] C-Chain wiped. Will enable admin API for import."
elif [ -f "$CCHAIN_IMPORT_SENTINEL" ]; then
echo "[IMPORT] Import already completed."
echo "[IMPORT] C-Chain RLP import already completed."
else
echo "[IMPORT] No RLP file found."
echo "[IMPORT] No C-Chain RLP file found."
fi
# ONE-TIME Zoo (200200) EVM RLP import — runs on luxd-0 only