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.8 KiB
YAML
46 lines
1.8 KiB
YAML
# Canonical chain aliases for lux-dev-k8s devnet luxd validators.
|
|
#
|
|
# Maps blockchainID → [alias names] for the 4 brand L2 EVMs registered on
|
|
# the devnet primary via CreateChainTx on 2026-06-02 (closes #168).
|
|
#
|
|
# Per-env canonical EVM chain IDs come from luxfi/genesis configs
|
|
# `lp182_chain_id_map.go::EVMChainIDFor(brand, "devnet")` — these are the
|
|
# source of truth, NOT the blockchain (CB58) IDs which are derived from
|
|
# the CreateChainTx tx ID and are env-specific opaque strings.
|
|
#
|
|
# hanzo devnet — evmChainID 36964 (0x9064)
|
|
# zoo devnet — evmChainID 200202 (0x30e0a)
|
|
# spc devnet — evmChainID 36912 (0x9030)
|
|
# pars devnet — evmChainID 494951 (0x78d67)
|
|
#
|
|
# All chains registered using vmID
|
|
# mgj786NP7uDwBCcq6YwThhaN8FLyybkCa4zBWTQbNgmK6k9A6 (canonical EVM plugin).
|
|
# Each chain is anchored on its own per-chain validator-network
|
|
# (CreateNetworkTx ID), with all 5 primary validators added as chain
|
|
# validators via IssueAddChainValidatorTx.
|
|
#
|
|
# Deployer P-chain control key (deterministic SHA-256 keyfile at
|
|
# ~/work/lux/keys/deployer-test-dev/private.key — shared key across
|
|
# testnet+devnet, address differs by HRP):
|
|
# P-dev19zc4fcupelfkue4z9wujxmu2tv9505q20pelm6
|
|
#
|
|
# Mainnet counterpart: lux-mainnet/chain-aliases.yaml (separate because
|
|
# mainnet chains live under different blockchainIDs).
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: chain-aliases
|
|
namespace: devnet
|
|
labels:
|
|
app.kubernetes.io/cluster: lux-dev-k8s
|
|
app.kubernetes.io/env: devnet
|
|
app.kubernetes.io/name: luxd-chain-aliases
|
|
data:
|
|
aliases.json: |
|
|
{
|
|
"2gSYzcV4Jo3ATAPrsJnjhmUjPVtmMNFqEMCpDjZ2hroAtzz3Ko": ["hanzo"],
|
|
"GP4ZLRFjoTcZSmuhPvJWuvRdHC4ZhiYp5M2RSPQxc33sNjkuD": ["zoo"],
|
|
"2bgKkULQx7nuNPD5tVKfHjMiaqKbQWykwNVECKAL4EDuTmHGyE": ["spc"],
|
|
"YNcHsEAEy4tRjGi4TmEvgKXk6bykh7BSRpeCRjWJKNkYkRdB6": ["pars"]
|
|
}
|