Skip to content

V0.4.0

Compare
Choose a tag to compare
@nivBlox nivBlox released this 01 Feb 13:38
· 941 commits to main since this release

πŸ”₯ Shifu V2 Network πŸ”₯

Summary

This version will perform the following steps:
β›” Shut down Shifu v1 network
πŸ•” Wait until Shifu v2 ignites (~2 weeks)
πŸ“… Shifu v2 starts at epoch 156113 (Wed Feb 15 10:03:12 UTC 2023)

No need to prepare anything. This version will stop and wait until the target epoch and start working by itself.

Features

πŸ’» Multi-Duties Support
πŸ“ Fully Aligned to Spec

What's Added

  • Alignment to spec 0.2.9
  • Fee Recipient (#795)
  • Introduction of protocol logger
  • Spec Alignment: Synchronization Decided (#734)
  • Alignment of instance container (#739)
  • Spec Alignment: Validator Refactoring (#748)
  • Non-Committee Validator Post Spec Alignment (#751)
  • Happy Flow 7 and 10 Committee + Integration Test Stabilization (#810)
  • Upgrade of Go (1.19) and libp2p (v0.24) (#789)
  • Addition of graffiti to share + migration
  • Addition of metrics for attestation submission and message processing durations (#736)
  • Local events (shares) (#745)
  • CI: Spec Testing (#758)
  • Spec Alignment: Round Change (#740)

What's Improved

  • Upgrade to Key Manager v1.2.0 (use Go client instead of Prysm objects)
  • Avoidance of delay on every check for peers (#732)
  • Pubsub: Fix topics management (#773)
  • Eth2Client interface (#794)
  • Extraction of metadata from share
  • Use of spec share (#735)

What's Changed

  • Move Share and Metadata into a new SSVShare struct
  • Patches from spec applied:
  • Deprecation of v1 (#743)
  • Storage of highest instance instead of highest decided (#752)
  • Deprecation of ToMessageID Function (#757)
  • Constant round duration (#756)
  • Deprecation of SyncHighestRound
  • Deprecation of SSVDecidedMsgType
  • Revised logging (#768)
  • Restructuring of protocol packages utilities (#766)
  • Creation of regular simulation (#772)
  • Multi-duties (#777)
  • Event-based message (#791)
  • Round timer as an event in the queue
  • Duty execution as an event in the queue
  • Streams Deadline (#792)
  • Round change & f+1 decided integration tests; validation functions (#793)
  • Round change integration test
  • F+1 decided integration test
  • Slashing protection (#805)
  • Minimal slashing protection (#807)
  • Node CLI cleanup (#812)
  • New Message Queue (#801)
  • Priority Queue (#761)
  • Full node (#785)