zeekay
|
3531ab5ddb
|
consensus: add 19 inversion tests for slashing, sampling, FPC
- Slashing: forged evidence, duplicate, exponential jail, concurrency
- StakeWeightedCut: chi-squared 50K samples, dominant validator, overflow
- FPC: seed determinism, epoch derivation, threshold range bounds
|
2026-03-02 23:59:00 -08:00 |
|
zeekay
|
726d939e83
|
consensus: permissionless launch readiness
BLOCKING fixes:
- Quasar: multi-validator finalization (require QThreshold sigs)
- Stake-weighted sampling (StakeWeightedCut replaces SimpleCut)
- FPC: configurable seed via DeriveEpochSeed (was hardcoded string)
- Slashing: equivocation detection (double-vote, double-sign, downtime)
- Prism: implement Propose/Vote (was nil-return stubs)
NON-BLOCKING fixes:
- Photon: Fisher-Yates shuffle in Emit() (was returning first N)
- Field: memoized isFullyFinalized (was O(n^2) DFS)
- Remove Snow/Avalanche references from production code
- Rename snowball_compat tests to threshold_compat
- Fix wave.New callers for (Wave, error) return
New: core/slashing package with Detector, Evidence, SlashingDB
All 26 packages pass. Zero failures.
|
2026-03-02 23:59:00 -08:00 |
|