Results 48 issues of Potuz

To check if an attestation is aggregated we loop and count all set bits. We should simply stop if there's more than 1 bit set. ``` func IsAggregated(attestation *ethpb.Attestation) bool...

We set the seen indices cache for unaggregated attestations when processing the gossip pipeline in https://github.com/prysmaticlabs/prysm/blob/develop/beacon-chain/sync/validate_beacon_attestation.go#L166 And then within the message handler in https://github.com/prysmaticlabs/prysm/blob/develop/beacon-chain/sync/subscriber_beacon_attestation.go#L26

Bug

From `validateUnaggregatedAttWithState`: ``` // however this validation can be achieved without use of get_attesting_indices which is an O(n) lookup. if a.AggregationBits.Count() != 1 || a.AggregationBits.BitIndices()[0] >= len(committee) { return pubsub.ValidationReject,...

If we get a cache miss in `committeeCache.Committee` when validating an attestation in https://github.com/prysmaticlabs/prysm/blob/develop/beacon-chain/core/helpers/beacon_committee.go#L127 We compute the committee and return it, https://github.com/prysmaticlabs/prysm/blob/develop/beacon-chain/core/helpers/beacon_committee.go#L143 but instead we should (compute all committees and)...

Prysm has a slasher feature, which is demanding in resources. However, equivocating blocks are already handled in the usual path for every beacon. We should broadcast immediately a slashing object...

Enhancement
Good First Issue

The beacon node should stop serving any connected vc if one of the registered validators is slashed. This was suggested by mariano.eth here https://twitter.com/nanexcool/status/1724487703830356395?t=g9zlDzvXnPyx0ATiE5OZhQ&s=19

Security

Bringing the discussion from https://hackmd.io/@dataalways/resilience here, we should default to a non zero min bid from builders that we enforce within prysm without relying on MEV boost.

Enhancement

wouldn't it be cool to run ``` $ beacon-db highest-blokcslot 7317076 $ beacon-db block 7317076 | jq { "version": "capella", "data": { "message": { "slot": "7317076", "proposer_index": "857356", "parent_root": "0x16a17127c9e89afd820e393bb504ca6aa345936c3e81cba7bc24e74d8b589850",...

Enhancement
Help Wanted

And just keep the root.