Potuz
Potuz
tracking head should be entire responsibility of forkchoice. We see test failures because of discrepancy between blockchain.head.root and forkchoice.Head().root.
On block processing, when the block reaches the blockchain package on `onBlock` we have already computed its hash tree root. This function calls `savePostStateInfo` with the htr as a parameter,...
In several areas of our code we use `[]byte` for roots when `[32]byte` would be more efficient. The main reason for this is protobuf support. Forkchoice uses internally `[32]byte` and...
Call `processPendingAtts` right after receiving and processing a block. this calls only once per block received instead of twice per slot. There is no point in calling this routine at...
This PR implements a decoupled `ProposerHead()` from forkchoice's `Head()`. This is the head that proposers will be using to base their blocks. The following logic is applied. There are four...
Attestations with wrong target after 5 slots are useless in Altair and thus should be ignored. See https://github.com/ConsenSys/teku/issues/4412
With the new checkpoint sync feature, we can let a node save periodically beacon states ssz and let the node backup from those. Instead of backing up the entire dbase,...
The Beacon State tracks the latest execution payload header in full, but the only thing that this is used for is to check that the parent hash is the right...
When currently syncing blocks, the CL notifies the EL about a new payload, after checking the validity it puts the block in forkchoice and after that it notifies the EL...
Following up from internal Slack discussions. This PR implements several of the community requested feature flags. - Adds a flag `--optimistic-execution` to allow the beacon node to run without an...