Skip to content

Commit

Permalink
Update the equivocating indices in the store
Browse files Browse the repository at this point in the history
Since we sometimes reuse the slashed validator index, we need to remove
it from the list of equivocating indices in the fork-choice store.
  • Loading branch information
ppopth committed Jul 11, 2023
1 parent 75971a8 commit 3ed0619
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 1 deletion.
2 changes: 1 addition & 1 deletion specs/_features/eip6914/beacon-chain.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
EIP-6914 -- The Beacon Chain
# EIP-6914 -- The Beacon Chain

## Table of contents

Expand Down
36 changes: 36 additions & 0 deletions specs/_features/eip6914/fork-choice.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# EIP-6914 -- Fork Choice

## Table of contents

<!-- TOC -->
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->

- [Introduction](#introduction)
- [Fork choice](#fork-choice)
- [Handlers](#handlers)
- [`on_reused_index`](#on_reused_index)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
<!-- /TOC -->

## Introduction

This is the modification of the fork choice according to EIP-6914.

## Fork choice

A new handler is added with this upgrade:

- `on_reused_index(store, index)` whenever a validator index `index: ValidatorIndex` is reused

This new handler is used to update the list of equivocating indices to be synchronized with the canonical chain.

### Handlers

#### `on_reused_index`

```python
def on_reused_index(store: Store, index: ValidatorIndex) -> None:
store.equivocating_indices.discard(index)
```

0 comments on commit 3ed0619

Please sign in to comment.