mirror of
https://github.com/luxfi/chains.git
synced 2026-09-24 00:26:00 +00:00
0d8a06af7d9e43b1cbcf957aeac6b821198cdeff
The dexvm is a stateless atomic ZAP proxy whose ImportTx/RelayOrderTx/ExportTx are deterministic block inputs, drawn from the proposer's pending pool. That pool (ChainVM.SubmitTx -> pendingTxs + engine notify) was unreachable from outside the process: CreateHandlers exposed only Ping/Status/Relay, so an off-chain keeper had no way to inject the ImportTx that consumes the C->D atomic object the C-side 0x9999 SubmitSwapIntent writes, nor the settling RelayOrderTx. The full two-phase seam therefore could not land a DEXFill. This adds a dex.submitTx JSON-RPC method (api.Service.SubmitTx) that forwards wire-encoded tx bytes to an api.TxSubmitter and returns the canonical ids.Checksum256 tx id. The submitter is wired ONLY on the node path (ChainVM.CreateHandlers builds the service with the ChainVM as submitter); the inner VM's read-only CreateHandlers (standalone/test) reports ErrSubmitUnavailable. Bootstrap-gated; admission/fee gate stays in ChainVM.SubmitTx. 6 unit tests cover unavailable/not-bootstrapped/bad-hex/empty/success(verbatim+TxID)/submitter-error.
Lux Chains
Independent VM plugin binaries for the Lux Network.
Each directory builds to a standalone binary that the Lux node loads as a plugin via --plugin-dir.
Build
make # build all VMs
make evm # build one VM
make test # test all
Install
lpm install evm
lpm install dexvm
Or copy binaries to ~/.lux/plugins/<vmid>.
VMs
| VM | Chain | Purpose |
|---|---|---|
| evm | C-Chain | EVM smart contracts |
| dexvm | D-Chain | Decentralized exchange |
| aivm | A-Chain | AI/ML inference |
| bridgevm | B-Chain | Cross-chain bridge |
| graphvm | G-Chain | GraphQL data layer |
| identityvm | I-Chain | Decentralized identity |
| keyvm | K-Chain | Key management |
| oraclevm | O-Chain | Oracle/off-chain data |
| quantumvm | Q-Chain | Post-quantum consensus signing (Pulsar) |
| relayvm | R-Chain | Cross-chain relay |
| servicenodevm | S-Chain | Service node registry |
| teleportvm | T-Chain | Unified teleport (bridge + relay + oracle) |
| thresholdvm (MPC) | M-Chain | MPC ceremonies (CGGMP21, FROST, Pulsar-general) — bridge custody for external wallets |
| thresholdvm (FHE) | F-Chain | FHE compute + TFHE bootstrap-key generation (encrypted EVM) |
| zkvm | Z-Chain | Groth16 over BLS12-381 (rolls N × ML-DSA-65 sigs into 192-byte proof) |
Languages
Go
98.2%
C
1.7%
Shell
0.1%