mirror of
https://github.com/luxfi/node.git
synced 2026-07-27 03:39:39 +00:00
vms.go drops the dexvm import+entry, calls appendDChainVM; vms_dchain.go (//go:build dchain) links it, vms_nodchain.go (//go:build !dchain) no-ops; vms/dexvm alias gated //go:build dchain + doc_nodchain.go placeholder. Genesis-gate (constants.DexVMID, no pkg dep) retained. VERIFIED: public 'go list -deps ./node/' has ZERO chains/dexvm|luxfi/dex|gpu-kernels|luxcpp; -tags dchain brings them in. Both builds green. Consensus change -- held for human review before merge/push (bundles with merkle-activation).
1.5 KiB
1.5 KiB
Consensus Package - AI Assistant Guide
This package is node-side glue around the canonical consensus engine in
github.com/luxfi/consensus. It does NOT implement the protocol — the
protocol lives in that module.
Package Structure
acceptor.go- Node-side block-acceptance callbacks (chain-ID-keyed)quasar/- Node-side wiring aroundconsensus/protocol/quasarzap/- ZAP agentic-consensus / DID bridge (self-contained, opt-in)
Acceptor
Acceptor interface called when consensus accepts a block / vertex.
AcceptorGroup manages multiple acceptors per chain — used by the indexer
and warp IPC. The variant here differs from the canonical
luxfi/consensus/core.Acceptor (different signature: *runtime.Runtime
instead of context.Context, plus chain-ID-keyed registration).
Quasar Wiring
The quasar/ subpackage wraps github.com/luxfi/consensus/protocol/quasar
with node-specific adapters (P-Chain validator state, BLS signing keys,
Corona threshold coordinator stub).
Signature Types
SignatureTypeBLS // Classical BLS
SignatureTypeCorona // Post-quantum threshold
SignatureTypeQuasar // Hybrid BLS + Corona
SignatureTypeMLDSA // Fallback ML-DSA
Testing
GOWORK=off go test ./consensus/... -v
Dependencies
github.com/luxfi/consensus- Canonical consensus protocol (engine, protocol/quasar, types, etc.)github.com/luxfi/ids- ID typesgithub.com/luxfi/log- Logginggithub.com/luxfi/runtime- Runtime context for acceptors