Skip to content

Āina-kāri

Compare
Choose a tag to compare
@djrtwo djrtwo released this 24 Nov 00:11
· 2384 commits to master since this release
c81c27e

v1.1.6 -- Āina-kāri -- is minor version release containing critical upgrades to the fork choice and a minor iteration on the Kintsugi🍵 Merge specs.

The critical fork choice upgrades include a finalization atomicity bugfix (#2727) which can only be exploited with >1/3 slashing and the long-awaited proposer score boosting (#2730) which patches up LMD-GHOST liveness issues.

For proposer score boosting, a PROPOSER_SCORE_BOOST value of 70% is currently specified. A final tuning of this parameter might result in a +/- 10% modification in a subsequent release. We recommend building this feature immediately and begin deploying to testnets with the 70% value. If there is a change in this value, it will be known by the end of 2022 and well before the Merge.

The finalization atomicity bugfix (#2727) includes a flag for importing attestations included in blocks into the forkchoice regardless of attestation epoch and current time. The use of this flag and attestation import epoch restrictions are both under consideration. There is a chance minor details around this logic change in the coming weeks, but the core of the atomicity bugfix (and simplification) is not expected to see any change.

📣Massive shout-out to Nusret Taş, Joachim Neu, and David Tse of Stanford's Tse Lab for their invaluable work in not only identifying but remedying issues found in the forkchoice📣

PR showing full diff can be found here: #2733

Phase 0

Forkchoice

  • [bugfix] Always atomically update justified and finalized in store #2727
  • Proposer LMD Score Boosting #2730

Merge

Beacon chain

  • [non-substantive] Rename coinbase to fee_recipient #2728
  • [non-substantive] Rename is_merge_* to is_merge_transition_* #2738

Forkchoice

  • [non-substantive] Remove difficulty from PowBlock #2720

Validator

  • Add handling for exceptional genesis TTD case #2719
  • [bugfix] Fix get_pow_block_at_terminal_total_difficulty and add unit tests #2726

Testing, repo, etc

  • Extend Merge unit tests (#2723, #2737)
  • Add Merge spec coverage report targets #2721
  • Make Phase0 -> Altair fork transition tests compatible with Altair -> Merge #2706
  • Add consensus-layer test writing guide #2700