Research
LP-6490
DraftLuxDA Node Modularization
LuxDA Node Modularization specification for LuxDA Bus
Abstract
This LP defines how LuxDA Bus components are packaged into a single Lux node binary with configurable modules.
Motivation
This specification formalizes the component design, ensuring consistent implementation across the LuxDA ecosystem.
Specification
1. Module Architecture
┌─────────────────────────────────────────────────────────────┐
│ Lux Node │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Header │ │ Relay │ │ DA │ │ Store │ │
│ │ Chain │ │ │ │ │ │ │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Index │ │ Chat │ │ TFHE │ │ Gateway │ │
│ │ │ │ SDK │ │ Orch │ │ │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
├─────────────────────────────────────────────────────────────┤
│ Core Runtime │
│ (P2P, Storage, Crypto, Config, Metrics) │
└─────────────────────────────────────────────────────────────┘
2. Configuration Profiles
# Full node profile
profile: full
modules:
headerchain: true
relay: true
da: true
store: true
index: true
chat: true
tfhe: false
gateway: true
# DA operator profile
profile: da-operator
modules:
headerchain: false
relay: true
da: true
store: true
index: false
chat: false
tfhe: false
gateway: true
# Messenger profile
profile: messenger
modules:
headerchain: false
relay: true
da: false
store: false
index: false
chat: true
tfhe: false
gateway: false
3. Module Interface
type Module interface {
Name() string
Dependencies() []string
Start(ctx context.Context, runtime *Runtime) error
Stop() error
Status() ModuleStatus
}
type Runtime struct {
Config *Config
P2P *P2PNetwork
Storage *StorageBackend
Crypto *CryptoProvider
Metrics *MetricsRegistry
}
4. Resource Requirements
| Profile | CPU | RAM | Storage | Bandwidth |
|---|---|---|---|---|
| Full | 4 cores | 16 GB | 500 GB | 100 Mbps |
| DA Operator | 2 cores | 8 GB | 2 TB | 1 Gbps |
| Messenger | 1 core | 2 GB | 10 GB | 10 Mbps |
| Validator | 8 cores | 32 GB | 1 TB | 1 Gbps |
LP-6490 v1.0.0 - 2026-01-02
Rationale
The design follows established patterns in the LuxDA architecture, prioritizing simplicity, security, and interoperability.
Backwards Compatibility
This specification introduces new functionality and does not modify existing protocols. It is fully backwards compatible with existing implementations.
Security Considerations
Implementations must validate all inputs, enforce access controls, and follow the security guidelines established in the LuxDA Bus specification.