Etan Kissling
bd94c20325
fix migration of `blob_gas_used`/`excess_blob_gas` from Deneb to Electra ( #6655 )
...
`blob_gas_used` and `excess_blob_gas` were reset on fork transition
from Deneb to Electra, which is not according to spec. Fix it.
2024-10-17 00:15:34 +00:00
Eugene Kabanov
fcf72a6e8e
VC: Electra fixes. ( #6631 )
...
* Initial commit.
* Add aggregated attestation processing.
* Add missing presets file.
* Fix compilation error.
* Fix post-rebase compilation error.
* Satisfy push raises requirement.
* Fix sync committee duties retrieval process.
* Fix forks configuration management.
* Fix deposits to use new fork configuration scheme.
* Fix /eth/v2/validator/aggregate_attestation implementation.
* Fix RANDAO preparation loop to handle blocks at epoch boundary properly.
* Simplification of RANDAO fix.
* Fix typo.
* Address review comments and fix tests.
* Fix incorrect status codes in REST test.
* Rework attestation and aggregated attestations processing code.
* Address review comments.
* Fill committee_index in RegisteredAttestation construction code.
* Address review comments part 2.
* Address review comments part 3.
* use Deneb fork epoch
* Add transition from Deneb to Electra into CI finalization test.
---------
Co-authored-by: tersec <tersec@users.noreply.github.com>
2024-10-16 17:20:39 +00:00
Etan Kissling
c4be5f677a
bump nim-eth to `171531fbf1a308c1bf4d2f6b88c6ee6924657437` ( #6645 )
...
- rm Goerli bootnodes
- update Sepolia and Holesky bootnodes
- Fix Authorization fields name to v, r, s
- Add helper for recovering authority
2024-10-15 21:47:17 +00:00
tersec
acad28d05b
avoid combining multiple aggregates from same committee ( #6642 )
2024-10-15 06:02:36 +02:00
Miran
585deb8f90
use types from `eth/common/eth_types` ( #6614 )
...
* bump nim-eth
* use types from `eth/common/eth_types`
2024-10-14 14:55:56 +00:00
tersec
c01cf6601a
attestation and aggregated attestation BN fixes for Electra ( #6641 )
...
* attestation and aggregated attestation BN fixes for Electra
* disable electra transition for this PR
* use cleaned-up verification function everywhere
2024-10-14 14:20:26 +00:00
tersec
bc51ba3077
styleCheck tweaks ( #6638 )
2024-10-12 00:51:28 +02:00
tersec
5608a803d7
update beacon_validators to be more Nim 2.2-compatible ( #6637 )
2024-10-11 15:39:45 +02:00
tersec
181f5f984d
use Deneb genesis for local testnet; add Electra forking support to local tesnet ( #6634 )
...
* use Deneb genesis for local testnet; add Electra forking support to local tesnet
* deneb -> electra in ncli_testnet help
2024-10-10 15:48:05 +00:00
tersec
9ba31fb5e6
adjust isomorphicCast to be Nim 2.2-compatible ( #6633 )
2024-10-10 12:23:23 +00:00
tersec
3868365ac0
automated consensus spec URL updating to v1.5.0-alpha.8 ( #6617 )
2024-10-09 08:37:35 +02:00
tersec
b8a424991d
use EF consensus spec v1.5.0-alpha.8 test vectors ( #6616 )
2024-10-09 04:33:17 +00:00
Jacek Sieka
7990cc2d1c
Ordered trie for trie root computations ( #6610 )
...
Gives a 100x speed boost for this operation which happens during
optimistic sync when computing the block hash.
Co-authored-by: Etan Kissling <etan@nimbus.team>
2024-10-08 22:10:50 +02:00
Miran
3f37caa0da
fix deprecated warnings ( #6606 )
2024-10-08 01:54:02 +00:00
Eugene Kabanov
5d11c5229b
Add Web3signer electra support ( #6607 )
...
* Add Electra support to nimbus_signing_node.
Add tests.
Annotate nimbus_signing_node with asyncraises.
* Update AllTests.
2024-10-07 23:31:16 +00:00
tersec
b370112fe0
some manual updates to EF consensus-specs v1.5.0-alpha.7 URLs ( #6604 )
2024-10-07 12:30:09 +02:00
tersec
50eed81dcf
electra BN attestation aggregating ( #6596 )
2024-10-07 07:53:38 +00:00
tersec
17d66118e8
automated consensus spec URL updating to v1.5.0-alpha.7 ( #6601 )
2024-10-06 14:03:56 +00:00
tersec
9c9f3707a1
use EF consensus spec v1.5.0-alpha.7 test vectors ( #6600 )
2024-10-06 13:15:56 +02:00
Jacek Sieka
8f0d910422
web: bump to new nim-eth types ( #6590 )
2024-10-02 15:26:11 +02:00
Jacek Sieka
b20f1ba8b3
Update nim-eth types ( #6583 )
...
Minimal changes needed for compatiblity with
https://github.com/status-im/nim-eth/pull/733 which aligns core types
with execution spec.
2024-09-29 13:32:55 +02:00
tersec
2e64fdfa67
centralize ConsensusFork <=> string handling in spec/forks ( #6587 )
2024-09-28 09:23:45 +02:00
Pedro Miranda
4beb890385
new pool attester slashings endpoint version (V2) for electra ( #6585 )
...
* new pool attester slashings endpoint version (V2) for electra
* formatting
---------
Co-authored-by: Pedro Miranda <pedro.miranda@nimbus.team>
2024-09-28 00:00:26 +00:00
Pedro Miranda
744cc00984
replace default word usage ( #6580 )
...
Co-authored-by: Pedro Miranda <pedro.miranda@nimbus.team>
2024-09-26 19:49:03 +00:00
tersec
28b20936e9
add Electra attester slashing gossip support ( #6582 )
2024-09-26 08:11:58 +02:00
Pedro Miranda
daf7f899c2
Attestation API updates for Electra ( #6557 )
...
* new V2 endpoint for beacon getBlockAttestations
* nnew GET endpoint version (V2) for getPoolAttestations
* new POST endpoint version (V2) for submitPoolAttestations
* remove premature ncli tests
* review improvements
* review comments and increased test coverage
* small improvements
* documentation typos
---------
Co-authored-by: Pedro Miranda <pedro.miranda@nimbus.team>
2024-09-25 12:33:58 +00:00
tersec
f2d6166099
remove block fork guessing/inference from REST JSON decoding ( #6552 )
...
* remove block fork guessing/inference from REST JSON decoding
* use template to avoid repetitive per-fork code
* consolidate RestPublishedSignedBeaconBlock and RestPublishedSignedBlockContents parsing fork handling
2024-09-25 02:58:53 +00:00
Agnish Ghosh
31b5c3e30e
add: inclusion proof and dc sidecar verification ( #6577 )
...
* add: inclusion proof and dc sidecar verification
* review 1
2024-09-24 14:46:05 +02:00
tersec
d4e441e694
add Electra attester slashing pool ( #6579 )
2024-09-24 11:01:40 +02:00
Eugene Kabanov
77e835153c
Bump nimcrypto to fix nim22 issues. ( #6578 )
...
* Bump nimcrypto to fix nim22 issues.
* Fix compilation issue.
2024-09-24 02:55:16 +00:00
Agnish Ghosh
85d7109065
add: `get_data_column_sidecars` ( #6566 )
...
* add: get_data_column_sidecars
* remove redundant type conversions
* remove redundant for loop
* review 2
* review 1
2024-09-22 23:35:57 +02:00
tersec
ff9d32d30d
some v1.5.0-alpha.6 consensus spec URL updates ( #6572 )
2024-09-21 06:53:34 +02:00
tersec
256f6b8b89
automated consensus spec URL updating to v1.5.0-alpha.6 ( #6571 )
2024-09-21 03:22:41 +02:00
tersec
193a982d24
use EF consensus spec v1.5.0-alpha.6 test vectors ( #6568 )
...
* use EF consensus spec v1.5.0-alpha.6 test vectors
* LC changes are good as is, no need for the debug comment
* Fix indentation
* Use `execution_requests` for requests root
* fill in spec reference URLs for ExecutionPayload(Header)
* copy `execution_requests` when blidning blocks for Electra and add test
* fix `test_engine_api_conversions`
---------
Co-authored-by: Etan Kissling <etan@nimbus.team>
2024-09-20 21:32:16 +02:00
Etan Kissling
9df3d075de
fix blinded block conversion for Deneb and Electra ( #6569 )
...
`blob_gas_used` and `excess_blob_gas` were not copied on blinding
signed beacon block.
2024-09-20 16:02:24 +02:00
Eugene Kabanov
e3fcd8b031
REST: getBlockRewards() and getSyncCommitteeRewards() implementation ( #6556 )
...
* Initial commit.
* Use temporary state instead of clearance.
* Attempt to fix `finalized`.
* Fix `genesis` response.
* Pre-calculate genesis block rewards response.
* Add implementation for sync committee rewards.
* Add total active balance calculation.
* Add genesis special case.
* Fix negative reward values.
* Address review comments.
* Fix isGenesis implementation and add REST test rules for both calls.
2024-09-18 23:34:32 +00:00
Agnish Ghosh
3f0d58492e
add: ssz consensus objs for peerdas ( #6555 )
2024-09-17 22:57:48 +00:00
Agnish Ghosh
1feeff4f92
add: recover matrix ( #6553 )
2024-09-17 10:21:55 +00:00
Agnish Ghosh
b3c8c71776
add: compute matrix ( #6550 )
...
* add: compute matrix
* rm unsused imports
* rm unused imports 2
* rm bin
* rm unused line
* improve doc
* rid space on proc sig
* review 1
* added seeded PRNG
* randomize blob count as well, with smaller seed
* review 2
2024-09-16 11:19:34 +00:00
tersec
72b5c2bd6e
add some electra support to REST JSON decoding; rm unused code ( #6549 )
2024-09-15 13:33:13 +00:00
Pedro Miranda
7b6caebf6e
Add publishAggregateAndProofsV2 ( #6546 )
...
* added new endpoint version(v2) for validator aggregate and proof
* review improvements
* introduced nim template for proof executiion
---------
Co-authored-by: Pedro Miranda <pedro.miranda@nimbus.team>
2024-09-13 21:11:09 +00:00
tersec
ed2422112c
resolve several outstanding items for Electra support; add debug-foo to light client yamux ( #6547 )
2024-09-13 10:07:06 +02:00
Agnish Ghosh
f53b621818
add: `get_extended_sample_count` with test ( #6544 )
...
* add: get_extended_sample_count with test
* drop return
* reviews
* review fix
* fixed
* fix doc
* hooked to all_tests
* rm bin
* add updated test file
* early return, maybe need results?
* refactor function intricacies
* drop columnsCount
2024-09-12 17:55:16 +02:00
Agnish Ghosh
a2a7cab76d
Rid result from `get_custody_column_subnets` ( #6543 )
...
* ditch results in get custody column subnets
* fix other part
2024-09-11 12:49:01 +02:00
tersec
1503c7dffe
rm some unused code/imports ( #6541 )
2024-09-11 05:45:37 +02:00
Pedro Miranda
1ac9b851b9
Add GetAggregateAttestation V2 endpoint version ( #6511 )
...
* attestation pool support and tests
* REST endpoints changes
* initial ncli and validator client support
* updated tests file
* fixed typos
* review improvements
* remove V1 endpoint
* revert v1 removal
* V2 endpoint version available to pre electra
---------
Co-authored-by: Pedro Miranda <pedro.miranda@nimbus.team>
2024-09-06 12:15:30 +00:00
Agnish Ghosh
444d1dd093
add: `get_custody_columns` for das_core ( #6532 )
...
* add: get_custody_columnns in das core specs with tests
* apply review changes
* review changes 2
* review 3
2024-09-04 16:05:18 +02:00
Agnish Ghosh
5a44e39e31
bump nim-kzg4844, enable ckzg2.0.0, fix whatever needed ( #6502 )
2024-09-02 11:47:00 +00:00
Etan Kissling
73be2af0d9
more concise RLP decoding syntax in EL helpers ( #6514 )
...
The comment in `readExecutionTransaction` is not actually relevant when
the `rlp.decode` template is called from a non-generic function.
The function still cannot be simply inlined; `is_valid_versioned_hashes`
is itself generic and would require an `export eth_types_rlp` to work
properly (generic sandwich issue). The non-generic function wrapper
seems simpler and avoids injecting RLP into importing modules.
2024-08-28 14:21:28 +02:00
tersec
8c2e8f2b0f
some v1.5.0-alpha.5 consensus spec URL updates ( #6509 )
2024-08-23 12:43:54 +02:00