Brings zoo to parity with lux: the SAME luxd-boot.sh (byte-identical to luxfi/universe k8s/boot) drives every network, and native ZAP replication (PQ-encrypted, restore-on-boot) replaces the boot-time admin_importChain (RLP) path. - k8s/boot/: shared entrypoint + mainnet/testnet/devnet env (ids 1/2/3, zoo EVM chainIds 200200/200201/200202, S3 path zoo/<net>/zaprepl, endpoint s3.zoo-system). Script is byte-identical to luxfi/universe. - k8s/zoo-<net>/snapshot-native/: replicate-s3-creds + replicate-age secrets (fill from KMS) + ZooNetwork replication merge-patch. CRD already allows unknown fields, so spec.replication is accepted today. - zoo-mainnet/luxd-rlp-import.yaml: RETIRED banner; kept as the provenance record of the one-time chain-200200 seed (now in the snapshot stream). - SNAPSHOT-NATIVE-ROLLOUT.md: per-network apply order (devnet→testnet→mainnet). Requires build-zoo rebuilt on database >= v1.20.3 and zooai operator replication-env parity (mirror of luxfi/operator); until then the boot script sets REPLICATE_* itself so replication works without operator changes. Co-authored-by: Hanzo Dev <[email protected]>
58 lines
2.9 KiB
YAML
58 lines
2.9 KiB
YAML
# Zoo mainnet EVM L2 — luxd RLP import spec.
|
|
#
|
|
# ─────────────────────────────────────────────────────────────────────────────
|
|
# RETIRED 2026-06-16 — superseded by snapshot-native/ (native ZAP replication).
|
|
# Boot no longer runs admin_importChain. The historic RLP below was imported
|
|
# ONCE; that state now lives in the S3 snapshot stream (zoo/mainnet/zaprepl) and
|
|
# is restored on boot by the luxd binary (database >= v1.20.3, restore-on-boot).
|
|
# This file is retained ONLY as the authoritative provenance record of the
|
|
# one-time chain-200200 seed (source commit, sha256, tip block). Do not re-enable
|
|
# the import path — snapshotSchedule.includeRlpExports is false.
|
|
# See: ../zoo-mainnet/snapshot-native/ and k8s/boot/luxd-boot.sh.
|
|
# ─────────────────────────────────────────────────────────────────────────────
|
|
#
|
|
# Source of truth for the one-time historic-state restore on the Zoo L2 EVM
|
|
# (chainId 200200) that runs as a tenant on Lux Network mainnet validators.
|
|
#
|
|
# As of 2026-06-01 this manifest is now realized through
|
|
# LuxNetwork.spec.tenantImports[] in
|
|
# lux/universe/k8s/lux-mainnet/network.yaml. The operator emits a content-
|
|
# hash-addressed tenant-import init container; luxd-startup.yaml runs a
|
|
# generic loop over operator-written JSON markers. Edits to this spec:
|
|
#
|
|
# 1. update sourceURL/sha256/blockchainID below as the authoritative record,
|
|
# 2. update lux/universe/k8s/lux-mainnet/network.yaml tenantImports[]
|
|
# entry with `tenant: zoo` to match,
|
|
# 3. apply both. The operator picks up the change, content hash flips,
|
|
# luxd-startup re-runs admin_importChain on next reconcile.
|
|
#
|
|
# No version-string bumping. No per-tenant shell blocks anywhere.
|
|
apiVersion: lux.network/v1alpha1
|
|
kind: TenantImport
|
|
metadata:
|
|
name: zoo-mainnet-200200
|
|
namespace: lux-mainnet
|
|
labels:
|
|
app.kubernetes.io/part-of: zoo-network
|
|
lux.network/tenant: zoo
|
|
spec:
|
|
chainAlias: zoo
|
|
chainID: 200200
|
|
vmID: vvSpHzUWYVAYgEwQBTfc6Nd8PGXRmDaLaFYgrGCuQKKRKzY2v
|
|
blockchainID: 2wbPWcyuNUimWW7YMq3gymTTpHjP9Lsm7GpmcyWimEs9kyTAAH
|
|
rlpFile: /data/zoo-mainnet-200200.rlp
|
|
rlpSource:
|
|
type: git
|
|
repo: github.com/luxfi/state
|
|
commit: df8c246
|
|
path: exports/zoo-mainnet-200200/blocks.rlp
|
|
sha256: 0850841a368dd1f85ae09d40f0552aecb679225b58ce4524b2d0a3337c7afc98
|
|
sizeBytes: 1356798
|
|
blocks: 800
|
|
sentinel: /data/.zoo_rlp_imported_v1
|
|
chaindataDir: /data/chainData/network-1/2wbPWcyuNUimWW7YMq3gymTTpHjP9Lsm7GpmcyWimEs9kyTAAH
|
|
importedAt: "2026-05-25T23:01:33Z"
|
|
importedVia: admin_importChain
|
|
tipBlock: 799
|
|
tipHash: "0xd6f92941bb2ac91dfd2443f32b0d93f2730e6cc81ddb2edd3f35720a9e1f72b8"
|