You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
block timestamps
- block_ts = genesis_ts + height*SLOT (deterministic, clock-independent); drop
median-past/future/monotonic checks; slot exact-match on the live verify path
- stall pacemaker on a local wall-clock liveness timer (STALL_PROGRESS_HEIGHT/WALL),
not slot ts, so a healthy leader is never view-changed on cumulative deficit
reward integrity (off state_root, lazy merkle-claim)
- bind per-epoch reward_root into the Checkpoint hash so the 2f+1 QC certifies it;
committee re-derives + compares in content_ok before signing (no single-producer trust)
- thread reward_root through driver/node/window-end; finalization adopts the
QC-certified root on every node so a catch-up node never serves a divergent local root
reward recompute scalability (100k super-nodes / <=1000 committee)
- light-bitmap index at apply (save/load_light_bitmaps): O(5) keys vs an O(14400)-block scan
- super-eligible index at apply (save/load_super_eligible): O(eligible) prefix read vs
O(registered) per-account scan; set-equal to the old scan, survives body pruning
signature verification scalability
- shared process-wide tokio runtime for sig verify (no per-signature runtime build)
- rayon-parallel QC signature verification (committee up to ~1000 PQ sigs, no aggregation)
determinism & logging
- deterministic parallel-executor batch order (HashSet -> BTreeSet)
- sig-reject ERR->WARN, shred pacing tag ->INFO, ip-gate sampled log + always-counted metric
tests: reward_root hash-binding + light-bitmap/super-eligible index round-trip;
qnet-consensus 92 + qnet-integration 162 lib tests pass.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
0 commit comments