CreateChainTx fired on testnet + devnet P-chains for all 4 brand L2 EVMs (hanzo / zoo / spc / pars) — 8 chains total, all isBootstrapped=true on all 3 pods per env (24/24 verified). Each chain uses the canonical EVM plugin (vmID mgj786NP7uDwBCcq6YwThhaN8FLyybkCa4zBWTQbNgmK6k9A6) and its own per-chain validator-network (CreateNetworkTx ID, L2-anchor pattern). All 5 primary validators added as chain validators via IssueAddChainValidatorTx. EVM chain IDs match the LP-182 canonical map per (brand, env): hanzo: test=36962 dev=36964 zoo : test=200201 dev=200202 spc : test=36910 dev=36912 pars : test=494950 dev=494951 Required a second wipe-and-rebootstrap of both primaries because #186's fresh genesis funded all 50T LUX into the validator stake (zero spendable P-chain balance for the deployer). Added a 6th allocation per genesis (a deterministic SHA-256 deployer key — 100K LUX spendable, NOT in initialStakedFunds). Reapplied lux-{testnet,devnet}-genesis ConfigMap, scaled luxd StatefulSet 3→0→3, P + C re-bootstrapped in ~75s on all pods. Snapshots from #186 retained (data-luxd-{0..2}-20260602). Inventory committed at k8s/lux-{test,dev}-k8s/{testnet,devnet}/chains-inventory.json (8 chains: blockchainID + per-chain networkID + evmChainID + bootstrap timestamps). chain-aliases ConfigMap committed for each env mapping brand-name → blockchainID for operator + gateway convenience. Tool used: ~/work/lux/genesis/cmd/bootstrap-chain (lux/genesis@HEAD — adds --key-file flag) against ~/work/lux/node/wallet/network/primary (lux/node@HEAD — fail-soft FetchState when X-Chain disabled). Followups: - Roll block 1 on each L2 (eth_blockNumber > 0) via heartbeat tx when downstream contract deploys land. - Update lux-gateway/gateway.yaml routing for /testnet/* and /devnet/* paths to point at the new lux-{test,dev}-k8s namespaces (currently still routes to legacy lux-testnet/lux-devnet namespaces). - Migrate ~/work/lux/keys/deployer-test-dev/private.key to KMS once kms-operator is deployed in test+dev clusters.
46 lines
1.5 KiB
JSON
46 lines
1.5 KiB
JSON
{
|
|
"network": "devnet",
|
|
"uri": "http://127.0.0.1:19660",
|
|
"controlKey": "P-dev19zc4fcupelfkue4z9wujxmu2tv9505q20pelm6",
|
|
"bip44Index": 5,
|
|
"vmId": "mgj786NP7uDwBCcq6YwThhaN8FLyybkCa4zBWTQbNgmK6k9A6",
|
|
"generatedAt": "2026-06-02T20:39:57Z",
|
|
"chains": [
|
|
{
|
|
"name": "hanzo",
|
|
"networkId": "sz2oFLPvGz7KQ7BHrs2tcY5WTFwP9ad2UgorsCyEM4jc563jn",
|
|
"chainId": "2gSYzcV4Jo3ATAPrsJnjhmUjPVtmMNFqEMCpDjZ2hroAtzz3Ko",
|
|
"evmChainId": 36964,
|
|
"firstBlockHex": "0x0",
|
|
"bootstrappedAt": "2026-06-02T20:40:19Z",
|
|
"reused": false
|
|
},
|
|
{
|
|
"name": "zoo",
|
|
"networkId": "UXckap5QxjViKuKePQp6mwaWrD19is7foFsqrRDfJKDc85HGo",
|
|
"chainId": "GP4ZLRFjoTcZSmuhPvJWuvRdHC4ZhiYp5M2RSPQxc33sNjkuD",
|
|
"evmChainId": 200202,
|
|
"firstBlockHex": "0x0",
|
|
"bootstrappedAt": "2026-06-02T20:40:41Z",
|
|
"reused": false
|
|
},
|
|
{
|
|
"name": "spc",
|
|
"networkId": "EMQBtaiRSoerFsnyiHpU2F1dRfkzGw6KU6NtTA1C4E9JG4ArH",
|
|
"chainId": "2bgKkULQx7nuNPD5tVKfHjMiaqKbQWykwNVECKAL4EDuTmHGyE",
|
|
"evmChainId": 36912,
|
|
"firstBlockHex": "0x0",
|
|
"bootstrappedAt": "2026-06-02T20:41:02Z",
|
|
"reused": false
|
|
},
|
|
{
|
|
"name": "pars",
|
|
"networkId": "2kEVjgH5AquPxVFvogoi4LbtQyRg5WfGXH2XqphonzNfCpcBzx",
|
|
"chainId": "YNcHsEAEy4tRjGi4TmEvgKXk6bykh7BSRpeCRjWJKNkYkRdB6",
|
|
"evmChainId": 494951,
|
|
"firstBlockHex": "0x0",
|
|
"bootstrappedAt": "2026-06-02T20:41:24Z",
|
|
"reused": false
|
|
}
|
|
]
|
|
} |