Closes the half-done CRD group migration on do-sfo3-lux-k8s that gates Wave 1C (luxfi/operator shim conversion). All 18 live CRs across LuxNetwork/LuxGateway/LuxChain/LuxMPC now have faithful lux.cloud equivalents with provenance annotations. Diagnosis: - lux-system/lux-operator is dormant (0/0). Neither group is reconciled; legacy phase=Running/Ready are frozen literals (observedGeneration:null, empty conditions). Live luxd StatefulSets (5/5, 113d) and api-gateway run independent of any reconcile loop -> applying corrected CRs is workload-safe. - Canonical kind is LuxNetwork on lux.cloud (operator network_lux.go owns the luxd StatefulSet), not networks.lux.cloud (empty unified kind). Actions (all on do-sfo3-lux-k8s, recorded as manifests): - LuxNetwork x3: prior new-group copies were lossy (dropped tenantImports, renamed pluginSource vmID->vmId which the Go struct does not read). Re-applied corrected manifests = full legacy spec + additive forward fields (exportSchedules, upgradeConfig.quasarTimestamp, image v1.30.3, adoptExisting:true) via server-side apply --force-conflicts (Adopt). Restored mainnet tenantImports (C-chain + zoo RLP) and all 12 vmID tags. - Gateway x3, Chain x11, MPC x1: already faithful on lux.cloud; annotated only. - Parity gate 18/18: every legacy field present on new-group CR with matching value (mpc image string<->struct ignored as documented forward migration). Live-Ready confirmation deferred to Wave 1C (operator dormant) and recorded in lux.network/migration-status -- no Ready fabricated. - New-group CRs annotated lux.network/migrated-from; legacy CRs annotated lux.network/superseded-by + migration-status. Legacy specs untouched (generation unchanged 27/22/29). The 11 Pending LuxChains are declarative shadows of plugins the luxd StatefulSet already serves; created after the operator went dormant, never reconciled. Faithfully present on chains.lux.cloud, kept (not deleted) until Wave 1C reconciles or retires them. NEXT: after Wave 1C activates the shim operator and Ready persists across a reconcile+rollout, the legacy lux.network CRs (superseded-by) and CRDs can be deleted. Not before. Co-authored-by: zeekay <[email protected]>
46 lines
3.1 KiB
Plaintext
46 lines
3.1 KiB
Plaintext
# AFTER state — 2026-06-18T22:33:17Z
|
|
|
|
## luxnetworks.lux.network -> luxnetworks.lux.cloud
|
|
legacy lux-devnet/luxd phase=Running superseded-by=luxnetworks.lux.cloud/luxd
|
|
legacy lux-mainnet/luxd phase=Running superseded-by=luxnetworks.lux.cloud/luxd
|
|
legacy lux-testnet/luxd phase=Running superseded-by=luxnetworks.lux.cloud/luxd
|
|
new lux-devnet/luxd phase=? migrated-from=luxnetworks.lux.network/luxd
|
|
new lux-mainnet/luxd phase=? migrated-from=luxnetworks.lux.network/luxd
|
|
new lux-testnet/luxd phase=? migrated-from=luxnetworks.lux.network/luxd
|
|
|
|
## luxgateways.lux.network -> gateways.lux.cloud
|
|
legacy lux-devnet/api-gateway phase=Ready superseded-by=gateways.lux.cloud/api-gateway
|
|
legacy lux-mainnet/api-gateway phase=Ready superseded-by=gateways.lux.cloud/api-gateway
|
|
legacy lux-testnet/api-gateway phase=Ready superseded-by=gateways.lux.cloud/api-gateway
|
|
new lux-devnet/api-gateway phase=? migrated-from=luxgateways.lux.network/api-gateway
|
|
new lux-mainnet/api-gateway phase=? migrated-from=luxgateways.lux.network/api-gateway
|
|
new lux-testnet/api-gateway phase=? migrated-from=luxgateways.lux.network/api-gateway
|
|
|
|
## luxchains.lux.network -> chains.lux.cloud
|
|
legacy lux-mainnet/a-chain phase=Pending superseded-by=chains.lux.cloud/a-chain
|
|
legacy lux-mainnet/b-chain phase=Pending superseded-by=chains.lux.cloud/b-chain
|
|
legacy lux-mainnet/d-chain phase=Pending superseded-by=chains.lux.cloud/d-chain
|
|
legacy lux-mainnet/g-chain phase=Pending superseded-by=chains.lux.cloud/g-chain
|
|
legacy lux-mainnet/i-chain phase=Pending superseded-by=chains.lux.cloud/i-chain
|
|
legacy lux-mainnet/k-chain phase=Pending superseded-by=chains.lux.cloud/k-chain
|
|
legacy lux-mainnet/m-chain phase=Pending superseded-by=chains.lux.cloud/m-chain
|
|
legacy lux-mainnet/o-chain phase=Pending superseded-by=chains.lux.cloud/o-chain
|
|
legacy lux-mainnet/q-chain phase=Pending superseded-by=chains.lux.cloud/q-chain
|
|
legacy lux-mainnet/r-chain phase=Pending superseded-by=chains.lux.cloud/r-chain
|
|
legacy lux-mainnet/z-chain phase=Pending superseded-by=chains.lux.cloud/z-chain
|
|
new lux-mainnet/a-chain phase=? migrated-from=luxchains.lux.network/a-chain
|
|
new lux-mainnet/b-chain phase=? migrated-from=luxchains.lux.network/b-chain
|
|
new lux-mainnet/d-chain phase=? migrated-from=luxchains.lux.network/d-chain
|
|
new lux-mainnet/g-chain phase=? migrated-from=luxchains.lux.network/g-chain
|
|
new lux-mainnet/i-chain phase=? migrated-from=luxchains.lux.network/i-chain
|
|
new lux-mainnet/k-chain phase=? migrated-from=luxchains.lux.network/k-chain
|
|
new lux-mainnet/m-chain phase=? migrated-from=luxchains.lux.network/m-chain
|
|
new lux-mainnet/o-chain phase=? migrated-from=luxchains.lux.network/o-chain
|
|
new lux-mainnet/q-chain phase=? migrated-from=luxchains.lux.network/q-chain
|
|
new lux-mainnet/r-chain phase=? migrated-from=luxchains.lux.network/r-chain
|
|
new lux-mainnet/z-chain phase=? migrated-from=luxchains.lux.network/z-chain
|
|
|
|
## luxmpcs.lux.network -> mpcs.lux.cloud
|
|
legacy lux-mainnet/lux-mpc phase=? superseded-by=mpcs.lux.cloud/lux-mpc
|
|
new lux-mainnet/lux-mpc phase=? migrated-from=luxmpcs.lux.network/lux-mpc
|