Giulio rebuffo
57bcbaa21f
Adds flags to enable/disable backfilling and enable full historical beacon node ( #8813 )
...
* Correct naming of hash func in Eth2
* Customizable mode of operation for Caplin
2023-11-22 13:24:35 +01:00
Giulio rebuffo
8d8368091c
Add full support to beacon snapshots ( #8665 )
...
This PR adds beacon blocks snapshots for the following chains:
* Mainnet snapshots
* Sepolia snapshots
2023-11-13 14:10:57 +01:00
Alex Sharov
3ac9f493b6
move chainname and snapcfg packages to erigon-lib ( #8508 )
2023-10-18 13:37:39 +07:00
Giulio rebuffo
d62ef03cad
Added states/fork and states/root to beacon API ( #8293 )
...
Added /eth/v1/beacon/states/{state_id}/root and
/eth/v1/beacon/states/{state_id}/fork
2023-09-27 11:15:51 +02:00
Giulio rebuffo
841327e212
BeaconAPI: Implemented /Spec ( #8131 )
2023-09-05 22:37:18 +02:00
Giulio rebuffo
e7dbc69571
Middleware for Caplin Beacon API ( #8103 )
2023-08-31 01:18:12 +02:00
a
521f0df55b
Historical block downloader ( #8016 )
2023-08-16 04:32:40 +02:00
Giulio rebuffo
e3a59ed902
Better caplin logging and logic ( #7992 )
2023-08-10 22:34:58 +02:00
Giulio rebuffo
443757edbd
Consensus separation for Engine API (Working on Sepolia) ( #7945 )
...
This makes the experimental consensus separation functional on sepolia.
2023-07-30 23:35:55 +02:00
a
3ab373787e
[caplin] extracting beacon state interface ( #7910 )
...
we need to extract this interface from the struct.
i need to also break down the interface more, to better show what parts
the caching is used, move some functions from the cache state to the
underlying.
don't merge
2023-07-20 00:20:33 +02:00
Enrique Jose Avila Asapche
bff1e0e901
[Caplin] Added json rpc cl ( #7836 )
...
Allows for Caplin to be used with other ELs from aside of Erigon
---------
Co-authored-by: Giulio <giulio.rebuffo@gmail.com>
2023-07-08 16:42:30 +02:00
Andrew Ashikhmin
9f5808b055
Schedule Shapella for Gnosis Chain ( #7784 )
...
Schedule the
[Shanghai](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/shanghai.md )/[Capella](https://github.com/ethereum/consensus-specs/tree/dev/specs/capella )
upgrade for Gnosis Chain. The [Gnosis withdrawals
spec](https://github.com/gnosischain/specs/blob/master/execution/withdrawals.md )
documents the difference between Gnosis Chain and Ethereum mainnet.
Refer to https://github.com/gnosischain/specs/pull/10 and
https://github.com/gnosischain/configs/pull/12 .
2023-06-22 15:36:07 +02:00
Giulio rebuffo
91dd39a7c1
Added support back for internal cl for testnets and gnosis ( #7641 )
2023-06-02 20:26:46 +02:00
Alex Sharov
5fb31ae95f
e3: release some e4 parts ( #7628 )
2023-06-02 10:35:26 +07:00
Giulio rebuffo
faf62a0c11
Caplin: Adding SSZ generics ( #7542 )
...
This PR makes the SSZ encodings less demented and more compact/flexible
overall
2023-05-23 20:58:34 +02:00
Giulio rebuffo
10848adb89
Embedded CL specific support to mainnet ( #7533 )
2023-05-17 15:32:47 +02:00
Andrew Ashikhmin
ea9712f858
Schedule Shapella on Chiado ( #7518 )
...
See https://github.com/NethermindEth/nethermind/pull/5160 ,
https://github.com/NethermindEth/nethermind/pull/5688 , and
https://github.com/gnosischain/configs/pull/11
2023-05-16 23:50:09 +02:00
Giulio rebuffo
6f758fd0b9
added chiado and gnosis support to caplin ( #7523 )
2023-05-16 00:47:20 +02:00
Giulio rebuffo
4cbbe65f31
Resp/Req support for Deneb ( #7519 )
2023-05-15 20:07:27 +02:00
a
cda14447ad
[caplin] pkg refactor ( #7507 )
...
Co-authored-by: Giulio <giulio.rebuffo@gmail.com>
2023-05-13 23:44:07 +02:00
Enrique Jose Avila Asapche
9cf2b42478
[Caplin] Block transition ( #7485 )
...
Added process of blob kzg commits for block transition following:
https://github.com/ethereum/consensus-specs/blob/dev/specs/deneb/beacon-chain.md#beacon-chain-state-transition-function
#7389
2023-05-13 21:52:49 +02:00
Roberto Bayardo
8356f3a320
use ssz from updated erigon-lib ( #7490 )
...
ssz/clonable interfaces have been moved to erigon-lib so they can be
shared with the txpool code there
2023-05-11 12:54:20 +01:00
Enrique Jose Avila Asapche
fbd18516ae
Deneb container changes beacon-chain ( #7420 )
...
Adding container changes for Deneb:
https://github.com/ethereum/consensus-specs/blob/dev/specs/deneb/beacon-chain.md
Changed to use pointers for BlobSideCar
#7389
2023-05-06 18:50:58 +02:00
Giulio rebuffo
43b09a7f55
Refactor of ssz interface ( #7439 )
...
Also added a better way to copy and the hasher
2023-05-05 11:19:24 +02:00
a
9644e6d220
Implement SpecTests in native go, add fork_choice handler ( #7422 )
...
a few TODO: remain to make this not a draft
---------
Co-authored-by: Giulio <giulio.rebuffo@gmail.com>
2023-05-02 16:19:22 +02:00
Giulio rebuffo
515aedda7b
Added Caplin Phase 1 ( #7290 )
...
* Introduces full beacon validation
* Removes light client
* NOTE: slow on purpose, I want everything to be BLS verified for now.
2023-04-17 18:06:50 +00:00
alex.sharov
cd2c5fe0fd
sepolia url fix
2023-04-04 11:42:12 +07:00
Peter Davies
e912ae01d8
cl: Update checkpoint sync endpoints ( #7223 )
...
I have replaced the `ethdevops.io` endpoints with `ethpandaops.io`. The
Sepolia endpoint was failing with `no such host` and the checkpoint sync
documentation shows `ethpandaops.io` to be the official source for EF
checkpoint sync endpoints.
2023-03-30 20:59:12 +00:00
Andrew Ashikhmin
4a1c61a031
Schedule mainnet Shapella. Fix BellatrixForkEpoch ( #7145 )
...
See https://github.com/ethereum/execution-specs/pull/727 . Also,
`BellatrixForkEpoch` should be 144896, not 144869: refer to [the
spec](https://github.com/ethereum/consensus-specs/blob/dev/specs/bellatrix/fork.md ).
2023-03-20 12:01:35 +00:00
Giulio rebuffo
36828fbb08
Added tool for processing for all mainnet beacon blocks ( #7095 )
2023-03-17 12:37:51 +00:00
Giulio rebuffo
dbf1225cb2
Added partial SSZ library ( #7083 )
...
Implements SSZ encode/decoding and hashtreeroot for simple list-lacking
data structures. does not account offset case.
2023-03-12 14:41:53 +00:00
Giulio rebuffo
e6ba82ca0b
Added Capella specs support to Erigon-CL ( #7051 )
...
Passing consensus-specs tests for Capella. Processing of withdrawals and
ExecutionChanges. efficient non-validation implemented. Refactored:
ExecutionPayload/ExecutionPayloadHeader.
2023-03-07 21:57:18 +00:00
Andrew Ashikhmin
e3906130ae
Rename SHARDING_FORK to DENEB_FORK ( #7014 )
...
See https://github.com/eth-clients/goerli/pull/160
2023-03-03 14:51:57 +00:00
Andrew Ashikhmin
aa9b9bdd1c
Schedule Shapella on Görli/Prater ( #7012 )
...
See https://github.com/ethereum/execution-specs/pull/724 &
https://github.com/eth-clients/goerli/pull/160
2023-03-03 13:27:36 +00:00
Giulio rebuffo
b51b293f14
faster rewards and penalties processing ( #6958 )
2023-02-25 21:51:30 +00:00
Giulio rebuffo
cfa8dd8657
Fixed sanity consensus tests for slots processing ( #6949 )
2023-02-24 21:07:32 +00:00
Giulio rebuffo
4525db6a9c
Fixed lightclient regression ( #6946 )
2023-02-24 15:11:50 +00:00
Andrew Ashikhmin
54593d934c
Don't use embedded CL by default for Gnosis ( #6918 )
...
Only Nimbus peers support light clients, and there's not enough Nimbus
peers on Gnosis.
2023-02-21 18:36:25 +00:00
Andrew Ashikhmin
67de38f097
Schedule Capella on Sepolia ( #6920 )
...
See https://github.com/eth-clients/sepolia/pull/30
2023-02-21 14:57:35 +00:00
Philippe Schommers
55091456a7
feat: add Gnosis and Chiado to CL ( #6788 )
...
This adds the Gnosis and Chiado configs to the CL. I'm sure there's
other things missing too. Any pointers would be appreciated!
Currently stuck on:
```
INFO[02-06|14:00:01.421] [Checkpoint Sync] Requesting beacon state uri=https://checkpoint.gnosis.gateway.fm/eth/v2/debug/beacon/states/finalized
INFO[02-06|14:00:02.846] [Checkpoint Sync] Retrieving lightclient bootstrap from sentinel root=6cd2f0f4018d7ca17c9bfaf69f7eb46706b5a9b3356b9686aa71ae15a11c47e4
```
2023-02-16 19:40:50 +00:00
Giulio rebuffo
3c069f7cbd
added static peers flag ( #6884 )
2023-02-15 17:56:10 +00:00
Giulio rebuffo
64ddd9f60e
Added reward/penalties processing ( #6819 )
2023-02-09 17:48:52 +01:00
Philippe Schommers
9e93914998
test: fix clparams config test ( #6790 )
...
Was only testing `MainnetNetwork` repeatedly before.
2023-02-07 18:32:23 +07:00
Giulio rebuffo
ee4c8ed3bd
Added working slot processing. ( #6779 )
2023-02-05 21:53:59 +01:00
Giulio rebuffo
ff21ef7b21
Added checkpoints and justification bits processing (post-altair) ( #6699 )
...
* Added processing of checkpoints
* Unit tests rigorously imported from prysm
* They all pass :)
2023-01-26 00:31:20 +01:00
Giulio rebuffo
635fe0cb21
Added custom chain flags to embedded consensus lightclient ( #6674 )
2023-01-24 00:03:48 +01:00
Giulio rebuffo
20a4ae4ffb
added support for Capella beacon blocks ( #6665 )
2023-01-22 23:39:23 +01:00
hexoscott
7dcbfbc283
reference hash, address, and chain config from lib ( #6536 )
2023-01-13 18:12:18 +00:00
Giulio rebuffo
fa55cf8efe
Added full backfilling routine with support with Phase0/Altair and Bellatrix + Consensus Layer Database Schema Prototype ( #6435 )
...
This PR Adds:
* Backfilling routine, downloads and write to db all historical blocks.
* Prototype of first attempt at Database schema for Historical blocks.
* Fixed minor bugs.
* Support for following forks: Phase0, Altair, Bellatrix.
2022-12-25 18:07:12 +01:00
Giulio rebuffo
f655e337d1
Added signed block abstraction (Phase0 & Altair & Bellatrix block support) ( #6422 )
2022-12-23 18:39:44 +01:00