Files
zeekay 1524d93a12 feat: initial Zoo Bridge white-label shim
White-label tenant shim for the canonical bridge — bridge.zoo.network.

The shim composes the OSS upstream (ghcr.io/luxfi/bridge:v1.1.39) and
ships:

- tenant.yaml — Zoo Bridge declarative config (brand=Zoo Bridge,
  IAM=zoo.id, KMS=kms.zoo.network, network=Zoo Mainnet chainId 200200,
  pq=strict-pq, chains=eth/btc/sol/ton/xrp/dot/zoo).
- Dockerfile — FROM upstream + COPY tenant.yaml + --tenant-config pin.
- contracts/tenant.json + Deploy.sh — wraps @luxfi/standard v1.7.5's
  DeployTenant.s.sol with the Zoo manifest.
- k8s/ — Deployment, Service, IngressRoute (bridge.zoo.network),
  ConfigMap, Namespace, Kustomization.
- tenant_test.go — go test imports luxfi/bridge/pkg/tenant.Load and
  validates tenant.yaml.
- .github/workflows/build.yml — semver-tag-gated GHCR push via the
  zooai org's zoo-build-linux-amd64 ARC pool.

Tests: GOWORK=off go test ./... → PASS.
2026-05-28 01:48:13 -07:00

28 lines
816 B
JSON

{
"_comment": "Zoo Bridge deployment manifest. Consumed by contracts/Deploy.sh -> forge script DeployTenant.s.sol from @luxfi/standard.",
"brand": "Zoo Bridge",
"governance": "0x0000000000000000000000000000000000000001",
"feeReceiver": "0x0000000000000000000000000000000000000002",
"opsOperator": "0x0000000000000000000000000000000000000003",
"mpcOperators": [
"0x0000000000000000000000000000000000000010",
"0x0000000000000000000000000000000000000011",
"0x0000000000000000000000000000000000000012",
"0x0000000000000000000000000000000000000013",
"0x0000000000000000000000000000000000000014"
],
"basketAllowlist": {
"USD": ["USDC", "USDT", "DAI"],
"BTC": ["BTC"],
"ETH": ["ETH"],
"SOL": ["SOL"],
"TON": ["TON"],
"XRP": ["XRP"],
"DOT": ["DOT"]
}
}