Files
universe/k8s/zoo-devnet/statefulset-patch.yaml
zeekayandHanzo Dev 5c1a638589 rpc: /ext/ -> /v1/ on our own hosts
luxd serves /v1/*; /ext/* 404s. Third-party chains keep their own paths.

Co-authored-by: Hanzo Dev <[email protected]>
2026-08-03 21:02:21 -07:00

42 lines
2.1 KiB
YAML

# Node flag injection for the operator-rendered zoo-chain StatefulSet.
# See k8s/zoo-mainnet/statefulset-patch.yaml for the full rationale: the node
# ignores ZOO_* env for these settings, so --http-host=0.0.0.0 (etc.) must be
# passed as CLI flags or the kubelet liveness probe can't reach /v1/health and
# the node restart-loops. devnet = Lux primary networkId 3, 1 validator, sybil
# protection off (networkId 3 convention).
#
# command is `zood` (zooai/node), not `./luxd` — same luxfi/node flag set plus
# zood self-installs the Zoo EVM/DEX/FHE plugins (incl. the 0x0303 inference +
# 0x0304 aivmbridge precompiles). devnet is the lowest-risk place to bring up
# Beluga as a real L3: a single fresh validator, no live L2 traffic. Once zood's
# `zood bootstrap` (or an operator-driven CreateChainTx) mints the Beluga
# blockchain (chainId 420420) on the Lux devnet P-chain, add
# --track-chains=<BELUGA_BLOCKCHAIN_ID> here.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: zoo-chain
spec:
template:
spec:
containers:
- name: zoo-node
# IMAGE IS OPERATOR-DERIVED — it comes from the ZooNetwork CR
# (k8s/base/network.yaml image.repository+tag), one source of truth. The
# operator renders it onto the StatefulSet. If a live StatefulSet predates
# an image change, delete it so the operator recreates it from the CR
# (it does not re-render an existing pod template). Only the luxd CLI
# flags below are asserted here — the operator passes them as ZOO_* env,
# which the node ignores (the clean fix is to make the operator emit these
# flags, like the Go lux operator does).
command: ["zood"]
args:
- --http-host=0.0.0.0
- --http-allowed-hosts=*
- --network-id=3
- --sybil-protection-enabled=false
# --track-chains is added once the Beluga blockchain (chainId 420420) is
# created on the Lux devnet P-chain (zood bootstrap). Bare aliases are
# rejected by the node ("input string is smaller than the checksum
# size"), so only a real blockchainID goes here.