* beluga: wire L3 to run zooai/node (replace luxd stopgap)
Make the Beluga L3 (chainId 420420) a real thinking-chain instead of an
inert luxd subnet stub. The zoo-chain validators tracked beluga under
ghcr.io/luxfi/node (luxd) ā a bare subnet runtime with no Zoo EVM and no
AI precompiles, so beluga could never instantiate (blockchainID empty).
Switch the zoo-chain ZooNetwork image to ghcr.io/zooai/node (zood), which
self-installs the Zoo EVM (AI/FHE/PQ/ZK precompiles, incl. the 0x0303
deterministic in-consensus inference precompile and the 0x0304 aivmbridge
that settles Tier-2 Proof-of-Thought to the Lux A-Chain), Zoo DEX and Zoo
FHE VM plugins at startup.
- base/network.yaml + zoo-{devnet,testnet,mainnet}/network-patch.yaml:
image ghcr.io/luxfi/node -> ghcr.io/zooai/node.
- zoo-{devnet,testnet,mainnet}/statefulset-patch.yaml: command ./luxd ->
zood (zood wraps luxfi/node, identical config.BuildFlagSet, so all flags
apply verbatim). Beluga's blockchainID is appended to --track-chains
once the CreateChainTx mints it on the Zoo primary network.
- base/beluga.yaml: enrich the ZooChain CR with vmId (Zoo EVM
2n2njofjYvece8gZWCNnc1mqkcqfW6kbrhPRZPVzwxrSQrQ4gE) and
genesisConfigMap (beluga-genesis), per the operator ZooChainSpec.
- base/kustomization.yaml: configMapGenerator beluga-genesis from
k8s/base/beluga/{genesis.json,config.json} (stable name, no hash).
- k8s/base/beluga/: deployed copy of the canonical genesis+config
(evmChainId 420420, BLG gas, precompile-upgrade activations at ts 0).
Image tags are floating `latest` only on devnet; testnet/mainnet pin the
immutable CI semver. The live rollout (restarts the L2 validators) is a
gated prod step performed after the ghcr.io/zooai/node image is verified.
* beluga: pin zood image to immutable sha-371ea17-amd64-node
ghcr.io/zooai/node built CGO-free (hermetic vendored build, digest
sha256:12e8244dā¦) and published. Pin the operator ZooChain CR image off the
floating 'latest' to the immutable build SHA per prod policy.
* beluga: pin devnet+testnet zood image to sha-371ea17-amd64-node (consistency)
* beluga(devnet): image is operator-derived from the ZooNetwork CR, not the patch
Per 'one and only one way, operator-derived': the zood image comes solely from
k8s/base/network.yaml (the ZooNetwork CR); the operator renders it. The patch
asserts only the luxd CLI flags the operator wrongly passes as ZOO_* env.
* beluga: pin zood image to clean semver 0.2.0 (not the sha hash)
Proper semver for all image pins ā ghcr.io/zooai/node:0.2.0 (digest 12e8244d,
same build), not sha-371ea17-amd64-node. The ZooNetwork CR is the single source;
the operator renders it onto the StatefulSet.
83 lines
2.1 KiB
JSON
83 lines
2.1 KiB
JSON
{
|
|
"config": {
|
|
"chainId": 420420,
|
|
"homesteadBlock": 0,
|
|
"eip150Block": 0,
|
|
"eip155Block": 0,
|
|
"eip158Block": 0,
|
|
"byzantiumBlock": 0,
|
|
"constantinopleBlock": 0,
|
|
"petersburgBlock": 0,
|
|
"istanbulBlock": 0,
|
|
"muirGlacierBlock": 0,
|
|
"berlinBlock": 0,
|
|
"londonBlock": 0,
|
|
"arrowGlacierBlock": 0,
|
|
"grayGlacierBlock": 0,
|
|
"mergeNetsplitBlock": 0,
|
|
"shanghaiTime": 0,
|
|
"cancunTime": 0,
|
|
"blobSchedule": {
|
|
"cancun": {"target": 3, "max": 6, "baseFeeUpdateFraction": 3338477}
|
|
},
|
|
"terminalTotalDifficulty": 0,
|
|
"chainEVMTimestamp": 0,
|
|
"durangoTimestamp": 0,
|
|
"etnaTimestamp": 253399622400,
|
|
"feeConfig": {
|
|
"gasLimit": 15000000,
|
|
"targetBlockRate": 2,
|
|
"minBaseFee": 25000000000,
|
|
"targetGas": 50000000,
|
|
"baseFeeChangeDenominator": 48,
|
|
"minBlockGasCost": 0,
|
|
"maxBlockGasCost": 1000000,
|
|
"blockGasCostStep": 200000
|
|
},
|
|
"warpConfig": {
|
|
"blockTimestamp": 0,
|
|
"quorumNumerator": 67,
|
|
"requirePrimaryNetworkSigners": false
|
|
},
|
|
"aiInferenceConfig": {
|
|
"blockTimestamp": 0
|
|
},
|
|
"aivmBridgeConfig": {
|
|
"blockTimestamp": 0
|
|
},
|
|
"aiMiningConfig": {
|
|
"blockTimestamp": 0
|
|
},
|
|
"fheConfig": {
|
|
"blockTimestamp": 0
|
|
},
|
|
"zkConfig": {
|
|
"blockTimestamp": 0
|
|
}
|
|
},
|
|
"alloc": {
|
|
"Be106a0000000000000000000000000000000001": {
|
|
"balance": "0x31a17e847807b1bc000000"
|
|
},
|
|
"Be106a0000000000000000000000000000000002": {
|
|
"balance": "0x108b2a2c28029094000000"
|
|
},
|
|
"Be106a0000000000000000000000000000000003": {
|
|
"balance": "0x84595161401484a000000"
|
|
},
|
|
"Be106a0000000000000000000000000000000004": {
|
|
"balance": "0x84595161401484a000000"
|
|
}
|
|
},
|
|
"nonce": "0x0",
|
|
"timestamp": "0x0",
|
|
"extraData": "0x42454c554741",
|
|
"gasLimit": "0xe4e1c0",
|
|
"difficulty": "0x0",
|
|
"mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
"coinbase": "0x0000000000000000000000000000000000000000",
|
|
"number": "0x0",
|
|
"gasUsed": "0x0",
|
|
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
|
|
}
|