Commit Graph
10 Commits
Author SHA1 Message Date
zeekay d1c8a2cc28 quasar: rename Corona→Corona, MLDSAProof→MLDSARollup, drop "triple"
The Quasar cert layers are the right cardinality of "Double Lattice +
Identity Rollup + optional Classical Fast-path", not "Triple Quantum":

  BLS-12-381  classical fast-path (pairing) — empty in pure-PQ
  Corona      Ring-LWE  threshold ML-DSA (luxfi/corona; production R-LWE)
  Pulsar      Module-LWE threshold ML-DSA (luxfi/pulsar; Class N1 byte-equal
                                            to FIPS 204)
  MLDSARollup per-validator ML-DSA-65 rolled into one STARK / Groth16 proof
                                            (Z-Chain → P3Q)

"Triple Quantum" misled because BLS is classical — at most one of three
legs was quantum in the historic BLS+Corona+ZK shape. The honest PQ
cardinality is **Double Lattice** (Ring + Module). Pure-PQ profiles
drop BLS entirely and rely on Corona + Pulsar.

Corona is the academic R-LWE construction with trusted-dealer DKG;
it stays out of any open public-chain path. Corona is the production
Ring-LWE library (Pedersen DKG over R_q + proactive resharing).

Surface (in protocol/quasar/types.go):
  QuasarCert.BLS         → unchanged (classical fast-path, optional)
  QuasarCert.Corona    → QuasarCert.Corona       (Ring-LWE threshold sig)
  QuasarCert.MLDSAProof  → QuasarCert.MLDSARollup  (succinct identity rollup)
  QuasarCert            now also has a Pulsar field (Module-LWE threshold sig,
                                                     populated when wired)

  QuasarSig.Corona     → QuasarSig.Corona  (also added Pulsar []byte)
  FinalityEvent.Corona / MLDSAProof → Corona / Pulsar / MLDSARollup

  New predicates:
    QuasarCert.IsDoubleLattice()       — Corona ∧ Pulsar (honest PQ count)
    QuasarCert.HasClassicalFastPath()  — len(BLS) > 0
    QuasarCert.HasIdentityRollup()     — len(MLDSARollup) > 0

The wire byte layout is unchanged (length-prefixed slots). Callers that
read the bytes don't notice. Source-level references that compiled
before the rename now compile against the new identifiers; bulk
rename swept the consensus repo (22 files, 219 insertions, 151
deletions) plus the engine/pq facing FinalityEvent.

Tests: GOWORK=off go test -short -count=1 ./... → all 28 packages green
(quasar suite 32s; integration 60s; no regressions).
2026-05-12 08:40:06 -07:00
zeekay 54ca07523d docs: audit and correct all consensus documentation
Verified every protocol/*.go against its doc.go. Fixed all inaccuracies:

- README.md: rewrote to match actual code; removed bogus SDK claims
  (C/Rust/C++ stubs presented as "100% test parity"), impossible
  benchmark numbers (0.33ns Quasar Phase I = sub-clock-cycle), stale
  version badge (v1.22.0 vs actual v1.22.84), wrong protocol
  descriptions (nebula as "state sync", nova as "parallel chain"),
  missing protocols (ray, field not listed)
- doc.go: stripped AI fiction (QZMQ, shared hallucinations, AI-powered
  validation, Dilithium/Kyber naming), replaced with accurate Quasar
  family description
- LLM.md: stripped 40KB of old session logs down to essential reference;
  accurate protocol table, honest SDK status, measured benchmarks only
- docs/index.mdx: fixed nebula/nova labels, removed impossible benchmark
- protocol/nebula/doc.go: fixed "consensus utils" typo
2026-02-15 17:40:11 -08:00
zeekay 4aac78700d Refactor: remove dead code, add thread safety, improve test coverage
- Remove unused packages: engine/dag/{getter,bootstrap,vertex/vertexmock},
  engine/pq/{bootstrap,block}, core/{tracker,verify}
- Add sync.RWMutex to protocol/wave for thread-safe map access
- Increase engine/dag test coverage from 11.7% to 98.3%
- Add comprehensive tests for DAG consensus, vertex, and engine
- All 27 packages pass tests, 16 at 100% coverage
2025-12-13 07:42:01 +00:00
zeekay 2e601e5f85 fix: Format Go files per gofmt and goimports requirements
- doc.go: Convert spaces to tabs for proper Go formatting
- validator/validatorstest/test.go: Add validators import alias
- engine/chain/chaintest/test_blocks.go: Add consensustest import alias
- engine/chain/block/blocktest/test.go: Add consensustest import alias

These formatting fixes resolve all lint errors from golangci-lint.
2025-11-06 14:16:53 -08:00
zeekay af37096e94 Update paper, docs, benchmarks 2025-11-06 10:48:02 -08:00
zeekay d1015840f7 Remove old qzmq 2025-11-06 10:46:01 -08:00
zeekay d3a67428b0 fix: add root package files for module compatibility 2025-09-24 09:13:56 +00:00
zeekay fee6b3564f Update and re-organize 2025-09-24 04:01:37 -05:00
zeekay ace766cace fix: resolve critical linting issues
- Fix SA4031 nil check error in engine/pq/consensus.go by replacing unreachable nil check with proper certificate validation
- Fix SA9003 empty branch error in engine/pq/engine_test.go by adding meaningful log statement
- Fix integer overflow G115 in quasar.go by avoiding conversion of addition result
- Separate deprecated GetSubnetID export to avoid SA1019 in main exports
- Format all Go files with gofmt
- All tests still passing with 100% success rate
2025-08-23 13:19:08 -05:00
zeekay 2e984670e6 feat: Implement Nova/Nebula/Quasar consensus with Ray/Field engines
- Add high-level cosmic terminology: Nova (linear), Nebula (DAG), Quasar (P-Chain)
- Implement internal optics engines: Ray (linear consensus), Field (DAG consensus)
- Add Horizon ordering for Quasar event horizon finality
- Integrate Corona + BLS fusion for post-quantum P-Chain security
- Update Prism Cut interface with proper lux (lx) luminance measurements
- Create comprehensive LaTeX white paper with BibTeX citations
- Add missing mock packages for node compatibility
- Maintain physics metaphors: photons, waves, cut, luminance, event horizons
- Support modular consensus transitions: Nova→Nebula, classical→quantum
2025-08-23 00:08:03 -05:00