ab71a3dabe3a0d204f4d9008c47b8159843552fb
The ghcr.io/zooai/operator:main binary (crate zoo-operator v0.1.2) watches ZooChain via Api::all and deserializes each object into ZooChainSpec (src/crd.rs): chainId (required u64) + optional blockchainId/vmId/ genesisConfigMap/networkRef. The installed CRD uses x-kubernetes-preserve-unknown-fields, so enforcement is client-side in the operator. The old beluga CR carried a rich legacy schema (type/parent/vmType/ evmChainId/coin/coinName/genesis.secretRef/config/precompiles/resources) with NO chainId. serde failed to decode it → the ZooChain list-watch's InitialList failed → the whole ZooChain controller stalled, blocking chain provisioning across all namespaces. Migrate beluga to the canonical shape, mirroring the working zoo-evm CR: evmChainId: 420420 -> chainId: 420420 parent: zoo-chain -> networkRef: zoo-chain Drop fields the operator does not consume (it only stamps status; the L3 is tracked via the validators' TRACK_CHAINS env, and EVM/precompile/genesis params live in genesis.json + the VM build, not this tracking CR).
Zoo Universe
Infrastructure orchestration for Zoo Labs Foundation.
Architecture
zoo.ngo — Marketing site (Vite SPA)
zoo.exchange — DEX (Vite + Tamagui)
zoo.network — Zoo Network validators
zoo.wallet — Browser extension + mobile + web wallet
docs.zoo.ngo — Documentation (fumadocs)
zips.zoo.ngo — Zoo Improvement Proposals
Local Development
docker compose up # All services
docker compose up ngo # Just the website
Production (DOKS)
Three clusters:
do-sfo3-zoo-k8s— mainnetdo-sfo3-zoo-test-k8s— testnetdo-sfo3-zoo-dev-k8s— devnet
Deploy:
./deploy.sh mainnet
./deploy.sh testnet
./deploy.sh devnet
Repos
| Repo | Package | Purpose |
|---|---|---|
| zoo/ngo | @zooai/ngo-web | Marketing site |
| zoo/exchange | @zooai/exchange | DEX frontend |
| zoo/wallet | @zooai/wallet | Wallet (ext + mobile + web) |
| zoo/ui | @zooai/ui + @zooai/gui | Design system |
| zoo/node | — | Rust blockchain node |
| zoo/docs | @zoo/docs | Documentation |
| zoo/ZIPs | — | Improvement Proposals |
| zoo/papers | — | Research papers (47) |
| zoo/formal | — | Formal proofs (20) |
Description
Declared state for the zoo fleet: one values file per service, one ApplicationSet
1.2 MiB
Languages
TypeScript
70.1%
Shell
21.5%
Makefile
8.4%