kms.lux.cloud is the brand host; kms.lux.network is retired

The .network host was retired 2026-07-27 and no longer resolves at all, so every
reference to it named an address that cannot answer. The brand host is .cloud,
matching kms.zoo.cloud and the rest of the white-label convention.

Left alone deliberately, because rewriting them would invert what they say: the
LLM.md line that RECORDS the retirement, the e2e spec that ASSERTS
kms.lux.network must not resolve, and the recorded applies + cluster backups,
which are faithful accounts of what was applied and are not config.

Co-authored-by: Hanzo Dev <[email protected]>
This commit is contained in:
2026-08-05 08:17:04 -07:00
co-authored by Hanzo Dev
parent 483145deb2
commit faf8ae7983
13 changed files with 24 additions and 24 deletions
+6 -6
View File
@@ -138,7 +138,7 @@ Single MPC cluster (5 nodes, threshold 3). Serves all orgs.
| Hostname | Service | Isolation |
|----------|---------|-----------|
| kms.lux.network | lux-kms:8443 | Shared (Lux/Zoo/Hanzo/Pars/SPC) |
| kms.lux.cloud | lux-kms:8443 | Shared (Lux/Zoo/Hanzo/Pars/SPC) |
| <dropped — tenant-managed> | (tenant-kms):8443 | Dedicated (tenant-only) |
### Cloud (Bootnode)
@@ -248,7 +248,7 @@ appearance is served at runtime via `/envs.js` and `chains.yaml`
| pars-exchange | lux-explorer | pars.market | pars-exchange:3000 |
| lux-explorer-tenant | lux-explorer | <dropped — tenant-managed> | lux-frontend-tenant:3000 |
| tenant-exchange | lux-explorer | <dropped> | tenant-exchange:3000 |
| lux-kms | lux-kms | kms.lux.network | lux-kms:8443 |
| lux-kms | lux-kms | kms.lux.cloud | lux-kms:8443 |
| tenant-kms | lux-kms | <dropped — tenant-managed> | tenant-kms:8443 |
| faucet-lux | lux-explorer | faucet.lux.network | faucet-lux:3000 |
| faucet-zoo | lux-explorer | faucet-zoo.lux.network, faucet.zoo.network | faucet-zoo:3000 |
@@ -355,7 +355,7 @@ FAUCET_LOGO_URL # /logo.svg
## 5. KMS Isolation Model
### Shared KMS (kms.lux.network)
### Shared KMS (kms.lux.cloud)
Serves: Lux, Zoo, Hanzo, Pars, SPC.
@@ -383,7 +383,7 @@ Their KMS has its own staking keys, MPC key shares, and deployer keys.
### KMS Secret Flow
```
KMS API (kms.lux.network)
KMS API (kms.lux.cloud)
|
v
KMSSecret CRD (in target namespace)
@@ -421,7 +421,7 @@ api.cloud.{brand}.{tld} --> bootnode-api (FastAPI, Python 3.12+)
+----------+----------+
| | |
lux-operator IAM API KMS API
(K8s CRDs) (hanzo.id) (kms.lux.network)
(K8s CRDs) (hanzo.id) (kms.lux.cloud)
```
### Bootnode API Endpoints (Relevant to WL)
@@ -602,7 +602,7 @@ bridge.lux.network A 134.199.138.27
bridge-api.lux.network A 134.199.138.27
mpc.lux.network A 134.199.138.27
mpc-api.lux.network A 134.199.138.27
kms.lux.network A 134.199.138.27
kms.lux.cloud A 134.199.138.27
faucet.lux.network A 134.199.138.27
faucet-{zoo,hanzo,spc,pars}.lux.network A 134.199.138.27
wallet.lux.network A 134.199.138.27
+1 -1
View File
@@ -196,7 +196,7 @@ mpc:
namespace: lux-mpc
api: mpc-api.lux.network
dashboard: mpc.lux.network
kms: kms.lux.network
kms: kms.lux.cloud
protocols: [CGGMP21, FROST, BLS, SR25519, LSS]
chains_supported:
secp256k1: [BTC, ETH, LUX, XRPL, all EVM]
+1 -1
View File
@@ -10,7 +10,7 @@ import { httpStatus, snap } from './helpers'
// api.lux.cloud → bootnode/bootnode-api
// console.lux.cloud → hanzo/console
// id.lux.cloud → hanzo/hanzo-login (IAM, alias of lux.id)
// kms.lux.cloud → hanzo/kms (alias of kms.lux.network)
// kms.lux.cloud → hanzo/kms (alias of kms.lux.cloud)
// mpc.lux.cloud → lux-mpc/mpc-dashboard (alias of mpc.lux.network)
// nodes.lux.cloud → bootnode/bootnode-web (alias of web3.hanzo.ai)
+1 -1
View File
@@ -112,7 +112,7 @@ spec:
value: lux
# KMS integration
- name: HANZO_KMS_URL
value: https://kms.lux.network
value: https://kms.lux.cloud
- name: HANZO_KMS_ORG
value: lux
- name: HANZO_KMS_PROJECT
+1 -1
View File
@@ -162,7 +162,7 @@ spec:
credentialsNamespace: lux-system
credentialsSecret: universal-auth-credentials
envSlug: devnet
hostApi: https://kms.lux.network/api
hostApi: https://kms.lux.cloud/api
projectSlug: lux-infra
resyncInterval: 300
secretsPath: /staking
+1 -1
View File
@@ -81,7 +81,7 @@ spec:
value: lux
# KMS integration
- name: HANZO_KMS_URL
value: https://kms.lux.network
value: https://kms.lux.cloud
- name: HANZO_KMS_ORG
value: lux
- name: HANZO_KMS_PROJECT
+1 -1
View File
@@ -35,7 +35,7 @@ spec:
- name: NODE_ENV
value: production
- name: SITE_URL
value: https://kms.lux.network
value: https://kms.lux.cloud
# Database (uses shared postgres in hanzo.svc)
- name: DB_CONNECTION_URI
valueFrom:
+2 -2
View File
@@ -10,10 +10,10 @@ spec:
ingressClassName: ingress
tls:
- hosts:
- kms.lux.network
- kms.lux.cloud
secretName: kms-tls
rules:
- host: kms.lux.network
- host: kms.lux.cloud
http:
paths:
- path: /
+3 -3
View File
@@ -28,7 +28,7 @@ spec:
staking:
secretName: luxd-staking
kms:
hostApi: https://kms.lux.network/api
hostApi: https://kms.lux.cloud/api
projectSlug: lux-infra
envSlug: mainnet
secretsPath: /staking
@@ -84,7 +84,7 @@ spec:
staking:
secretName: luxd-staking
kms:
hostApi: https://kms.lux.network/api
hostApi: https://kms.lux.cloud/api
projectSlug: lux-infra
envSlug: testnet
secretsPath: /staking
@@ -145,7 +145,7 @@ spec:
staking:
secretName: luxd-staking
kms:
hostApi: https://kms.lux.network/api
hostApi: https://kms.lux.cloud/api
projectSlug: lux-infra
envSlug: devnet
secretsPath: /staking
+2 -2
View File
@@ -88,7 +88,7 @@ spec:
credentialsNamespace: lux-system
credentialsSecret: universal-auth-credentials
envSlug: testnet
hostApi: https://kms.lux.network/api
hostApi: https://kms.lux.cloud/api
projectSlug: lux-infra
resyncInterval: 300
secretsPath: /staking
@@ -168,7 +168,7 @@ spec:
staking:
secretName: luxd-staking
kms:
hostApi: https://kms.lux.network/api
hostApi: https://kms.lux.cloud/api
projectSlug: lux-infra
envSlug: testnet
secretsPath: /staking
+1 -1
View File
@@ -35,7 +35,7 @@ spec:
keys:
secretName: lux-mainnet-staking
kms:
hostAPI: https://kms.lux.network/api
hostAPI: https://kms.lux.cloud/api
projectSlug: lux-infra
envSlug: mainnet
secretsPath: /staking
+1 -1
View File
@@ -21,7 +21,7 @@ set -euo pipefail
START=${1:-5}
END=${2:-7}
NETWORK=${3:-mainnet}
KMS_API="${KMS_API_URL:-https://kms.lux.network/api}"
KMS_API="${KMS_API_URL:-https://kms.lux.cloud/api}"
PROJECT="${KMS_PROJECT_ID:-}"
MNEMONIC="${LUX_MNEMONIC:-}"
if [ -z "$MNEMONIC" ]; then
+3 -3
View File
@@ -2,7 +2,7 @@
# kms-seed.sh — Export current K8s secrets into Hanzo KMS
#
# Prerequisites:
# 1. Login: KMS_API_URL=https://kms.lux.network/api kms login
# 1. Login: KMS_API_URL=https://kms.lux.cloud/api kms login
# 2. Create project "lux-infra" in KMS dashboard
# 3. Create environments: mainnet, testnet, devnet
# 4. Set PROJECT_ID below
@@ -13,7 +13,7 @@
# Usage: ./scripts/kms-seed.sh
set -euo pipefail
KMS_API="https://kms.lux.network/api"
KMS_API="https://kms.lux.cloud/api"
PROJECT_ID="${KMS_PROJECT_ID:?Set KMS_PROJECT_ID env var}"
echo "=== Seeding KMS with existing K8s secrets ==="
@@ -78,7 +78,7 @@ fi
echo
echo "=== Done! Now set up IAM auth for production ==="
echo "1. Go to kms.lux.network > Identities > Create Machine Identity"
echo "1. Go to kms.lux.cloud > Identities > Create Machine Identity"
echo "2. Add Kubernetes auth method (for in-cluster) or IAM auth"
echo "3. For K8s auth: configure service account binding"
echo "4. Apply KMSSecret CRDs:"