Files
zeekay 7cf87b230b node-unified is the node
The module already called itself github.com/luxfi/node while containing no node
in Go: cmd/luxd was twenty-one lines that printed the size of a few types, and
the Go column of the matrix measured a VM plugin. A repo that fetches the thing
it claims to be has not replaced it, so the Go sources move in — 1515 files,
the daemon and everything under it — and the build reaches outside this module
for nothing.

Rust and C++ sit beside it unchanged and are still measured against it by the
differential. That is the point of one repo: the reference implementation and
the two ports are the same checkout, so parity is a thing you can run rather
than a thing you assert.

Verified: builds, and the closure carries no lux-private — checked at build time
rather than believed. The daemon starts twelve chains on a local network
(P X C Q Z A B G K M F, plus D through its plugin) and reports healthy.
2026-09-07 16:15:25 -07:00

39 lines
1.9 KiB
Go

// Copyright (C) 2019-2026, Lux Industries Inc. All rights reserved.
// See the file LICENSE for licensing terms.
package quasar
import "errors"
// Typed, fail-closed errors. Every one is returned (never swallowed) and, when
// surfaced from the accept hook post-activation, halts finalization rather than
// accepting a checkpoint without valid post-quantum evidence.
var (
// ErrFinalityCertMissing — a checkpoint was finalized post-activation but no
// QuasarCert is available for it (the producer has not delivered one).
ErrFinalityCertMissing = errors.New("quasar: finality cert missing for checkpoint")
// ErrFinalityCertMismatch — a cert exists but does not bind the finalized
// block (chain/height/block/state mismatch). Anti-replay.
ErrFinalityCertMismatch = errors.New("quasar: finality cert does not bind the finalized block")
// ErrFinalityCertInvalid — the cert is bound correctly but failed consensus
// verification (policy, validator-set root, or a leg signature).
ErrFinalityCertInvalid = errors.New("quasar: finality cert failed verification")
// ErrValidatorSetUnavailable — no committed validator set for the cert's
// epoch (the verifier cannot resolve the per-leg verification keys).
ErrValidatorSetUnavailable = errors.New("quasar: validator set unavailable for epoch")
// ErrPolicyUnavailable — the gate has no configured policy.
ErrPolicyUnavailable = errors.New("quasar: policy unavailable")
// ErrPolicyMismatch — the cert's PolicyID is not the configured policy. A
// cert cannot select its own (weaker) posture.
ErrPolicyMismatch = errors.New("quasar: cert policy id does not match configured policy")
// ErrGateMisconfigured — the gate is activated at a checkpoint but has no
// cert store or validator provider. Fail closed rather than panic.
ErrGateMisconfigured = errors.New("quasar: gate activated but missing store or validator provider")
)