2
0
mirror of https://github.com/status-im/nimbus-eth2.git synced 2025-01-17 01:51:09 +00:00

1613 Commits

Author SHA1 Message Date
Etan Kissling
125fa921a3
Merge branch 'dev/etan/df-forkedblobs' into fusaka-light 2024-10-07 13:54:06 +02:00
Etan Kissling
d976a9313e
Merge branch 'stable' into dev/etan/df-forkedblobs 2024-10-04 16:14:58 +02:00
Etan Kissling
ec831f1c99
clean up config loading in light client tests ()
The consensus-spec-tests routinely add random experimental features
to their config.yaml which can be ignored.
2024-09-21 12:54:27 +00:00
Etan Kissling
af75741f2a
Merge branch 'unstable' into feat_eip-7688 2024-09-21 14:44:53 +02:00
tersec
256f6b8b89
automated consensus spec URL updating to v1.5.0-alpha.6 () 2024-09-21 03:22:41 +02:00
tersec
193a982d24
use EF consensus spec v1.5.0-alpha.6 test vectors ()
* 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 ()
`blob_gas_used` and `excess_blob_gas` were not copied on blinding
signed beacon block.
2024-09-20 16:02:24 +02:00
tersec
e94417c500
speed up electra attestation tests by 5x () 2024-09-19 07:46:38 +02:00
Agnish Ghosh
3f0d58492e
add: ssz consensus objs for peerdas () 2024-09-17 22:57:48 +00:00
Agnish Ghosh
1feeff4f92
add: recover matrix () 2024-09-17 10:21:55 +00:00
Agnish Ghosh
b3c8c71776
add: compute matrix ()
* 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
Agnish Ghosh
f53b621818
add: get_extended_sample_count with test ()
* 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
tersec
16c21e1c1e
rm unused code/type conversoins; re-enable Electra block gossip verification () 2024-09-12 11:11:08 +02:00
Pedro Miranda
1ac9b851b9
Add GetAggregateAttestation V2 endpoint version ()
* 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 ()
* 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
8306ad58bd
add: EF test vectors as per alpha 5 for peerdas ()
* added: EF tests for peerdas kzg crypto

* keep links to alpha 5 (latest)
2024-09-02 17:23:06 +02:00
Agnish Ghosh
5a44e39e31
bump nim-kzg4844, enable ckzg2.0.0, fix whatever needed () 2024-09-02 11:47:00 +00:00
Etan Kissling
7ac4756e73
Merge branch 'dev/etan/df-forkedblobs' into feat_eip-7688 2024-09-01 15:48:31 +02:00
Etan Kissling
18af8dcd9f
Merge branch 'stable' into dev/etan/df-forkedblobs 2024-08-30 14:54:33 +02:00
Pedro Miranda
f9e44b2a3b
Improved electra attestations packing ()
* test disjoint comittee bits

* test for aggregated attestations with disjoint bits

* improved attestation pool on-chain collecting and packing

* addressed format issues

* improved sorting method

* updated AllTests-mainnet file

* updated AllTests-mainnet file

* review corrections

* review corrections

* removed old phase0 artifacts

---------

Co-authored-by: Pedro Miranda <pedro.miranda@nimbus.team>
2024-08-23 13:26:35 +02:00
tersec
44cc72c104
refactor engine API conversions out of EL manager () 2024-08-22 16:12:03 +02:00
tersec
21aeeaf561
automated consensus spec URL updating to v1.5.0-alpha.5 () 2024-08-21 14:25:19 +02:00
tersec
f258cba816
some v1.5.0-alpha.4 consensus spec URL updates () 2024-08-10 07:09:37 +02:00
tersec
904318cf83
automated consensus spec URL updating to v1.5.0-alpha.4 () 2024-08-09 18:24:49 +02:00
Etan Kissling
3375875e05
remove option to select Capella fork choice algo ()
* remove option to select Capella fork choice algo

With Deneb having run stable for quite a while now, it's time to remove
the option to select the prior fork choice algo from Capella.

* also remove usage from test
2024-08-07 14:48:05 +00:00
tersec
c0fc0f41dd
calculate next slot's withdrawals properly even across epoch boundary () 2024-08-06 13:33:16 +02:00
tersec
8333365848
replace validator Bloom filter with partial bucket sort () 2024-08-02 07:30:22 +02:00
Etan Kissling
ea16edd886
add test for shuffled attestation signatures ()
Followup of  to test proper signature verification. Also document
possible further optimization based on blst `v0.3.13`.
2024-07-26 23:31:05 +00:00
Etan Kissling
c373e3ab35
reduce code repetition in test_toblindedblock ()
Use `withAll` to generate the tests for various blinded block types
instead of copy pasting them for every fork.
2024-07-26 22:03:11 +00:00
Etan Kissling
6062bde5e5
fixes 2024-07-26 04:50:57 +02:00
Etan Kissling
6e80561080
Electra BlobSidecar for EIP-7688 2024-07-26 04:03:42 +02:00
Etan Kissling
48c3761530
Add more EIP-7688 SSZ tests 2024-07-26 04:02:38 +02:00
Etan Kissling
02fd912f92
Merge branch 'dev/etan/df-forkedblobs' into feat_eip-7688 2024-07-26 02:01:28 +02:00
Etan Kissling
2183c3cacc
explicitly mention Deneb in SSZ test 2024-07-26 01:56:19 +02:00
Etan Kissling
2abfee3488
Merge branch 'dev/etan/df-forkedblobs' into feat_eip-7688 2024-07-25 21:01:33 +02:00
Etan Kissling
d028baea2a
introduce ForkedBlobSidecar for EIP-7688 Electra period before PeerDAS
On `ELECTRA_FORK_EPOCH`, PeerDAS is not yet activated, hence the current
mechanism based on `BlobSidecar` is still in use. With EIP-7688, the
generalized indices of `BeaconBlockBody` get reindexed, changing the
length of the inclusion proof within the `BlobSidecar`. Because network
Req/Resp operations allow responses across fork boundaries, this creates
the need for a `ForkedBlobSidecar` in that layer, same as already done
for `ForkedSignedBeaconBock` for similar reasons.

Note: This PR is only needed if PeerDAS is adopted _after_ EIP-7688.
If PeerDAS is adopted _before_ EIP-7688, a similar PR may be needed for
forked columns. Coincidental `Forked` jank can only be fully avoided if
both features activate at the same epoch, actual changes to blobs aside.
Delaying EIP-7688 for sole purpose of epoch alignemnt is not worth it.
2024-07-25 18:54:38 +02:00
tersec
15cca5f93e
hypergeometric distribution CDF for PeerDAS () 2024-07-25 01:59:24 +00:00
Etan Kissling
a769550db5
rename LC gindex constants to match spec ()
Use `_ELECTRA` suffix for gindex constants to match consensus-specs.
2024-07-23 20:20:15 +00:00
Etan Kissling
159f57f27e
LC constant rename 2024-07-22 14:13:56 +02:00
Kim De Mey
cd008ba7ef
Bump NimYAML + bump related changes () 2024-07-17 21:50:29 +02:00
tersec
3db571d182
allow individual calculation of validator balances across epoch boundaries () 2024-07-07 00:32:50 +02:00
andri lim
0b276315d2
Bump nim-eth: Convert GasInt to uint64 ()
* Bump nim-eth: Convert GasInt to uint64

* Fixes

* Fix libnimbus_lc
2024-07-06 20:25:31 +00:00
Eugene Kabanov
84a35c85c5
Fix for gcc-14 issues in kzg-4844. ()
* Bump nim-kzg4844.

* Fix code to use proper KZG types.

* Add missing coma.

* Fix compilation issue.

* Bump nim-kzg4844.

* Add debugging output.

* Remove debugging output.

* Restore groupBlobs function.
2024-07-03 10:01:33 +00:00
Etan Kissling
1fd246b23e
explicitly refer to attestation fork in SSZ consensus object tests ()
Use fully qualified types when referring to attestation related types
in tests. We should also consider to merge these to a single runner.
2024-07-03 01:40:47 +00:00
tersec
13e766d4df
add database electra block tests () 2024-07-01 04:18:41 +00:00
Etan Kissling
9924aec1e3
extend light client protocol for Electra ()
* extend light client protocol for Electra

Add missing Electra support for light client protocol:

- https://github.com/ethereum/consensus-specs/pull/3811

Tested against PR consensus-spec-tests, the test runner automatically
picks up the new tests once available.

* workaround `version-2-0`: `Error: cannot instantiate: 'SomeUnsignedInt'`

* fix initialization when Electra not scheduled

* try reduce stack size in test

* put correct sync committee branch version into DB

* adjust fork schedule in light client data tests

* further reduce stack size

* split function into multiple parts

* rename variable

* regenerate test reports to cover new Electra tests

* add Nim bug reference
2024-06-26 19:02:03 +00:00
Etan Kissling
754e9c3b10
Merge branch 'dev/etan/lc-electra' into feat_eip-7688 2024-06-25 14:57:39 +02:00
Etan Kissling
0c4e87a40b
Merge branch 'unstable' into dev/etan/lc-electra 2024-06-24 12:51:51 +02:00
Etan Kissling
e4efe9ed75
ensure that rarely ran files are compiled on PR ()
* ensure that rarely ran files are compiled on PR

Add some missing files to `isMainModule` developer internal builds CI.

* fix fork choice compilation

* fix `rest_api_benchmark` compilation

* skip linking

* fix loop

* fix `mock_genesis`

* fix signedness
2024-06-23 23:35:56 +00:00
Etan Kissling
4e8e316012
Merge branch 'unstable' into dev/etan/lc-electra 2024-06-23 15:54:46 +02:00