Agnish Ghosh
4d0c66657f
rework some of the reconstruction publishing logic
2024-09-21 15:47:58 +05:30
Agnish Ghosh
e8b64d8dd2
subnet sampling part 2
2024-09-19 13:36:56 +05:30
Agnish Ghosh
76b53483ff
make debug more crispp
2024-09-12 19:18:13 +05:30
Agnish Ghosh
7d04142e4a
simplify usage of get custody columns
2024-09-09 01:58:21 +05:30
Agnish Ghosh
07d1a26e59
include data columns in addBlock that care about custody
2024-08-28 18:53:28 +05:30
Agnish Ghosh
b0710806da
added more logging
2024-08-27 14:28:38 +05:30
Agnish Ghosh
ef6901f0a9
enable more logging
2024-08-27 12:13:12 +05:30
Agnish Ghosh
a26258a6db
echo out column, kzg proof and commitment length to debug
2024-08-27 11:59:00 +05:30
Agnish Ghosh
93b043f88a
changed data column extraction logic during block proposals
2024-08-27 01:06:54 +05:30
Agnish Ghosh
e9c7a758a0
change get data column sidecar logic in proposer to alpha 4
2024-08-27 00:08:05 +05:30
Agnish Ghosh
4730a4b246
enable blob length clarity for more clarity over the bug
2024-08-26 21:47:26 +05:30
Agnish Ghosh
6c6f33a925
investigate potential disparity between das workers length and extracted data columns length
2024-08-26 21:08:39 +05:30
Agnish Ghosh
3e0992e0be
enabled logging of subnet ids, and data column indices to prevent mismatch
2024-08-26 12:55:17 +05:30
Agnish Ghosh
0f28477295
added debug to subnet ids
2024-08-26 12:19:13 +05:30
Agnish Ghosh
7c33d3f0f4
prevent blob proposal in pd devnet
2024-08-17 23:42:31 +05:30
Agnish Ghosh
9be615dff9
add: data column reconstruction and broadcast ( #6481 )
...
* save commit, decouples reconstruction and broadcasting
* save progress
* add: reconstruction event loop, previous reconstruction related cleanups
2024-08-08 17:44:55 +05:30
Agnish Ghosh
b32205de7c
upstream peerdas alpha3 related spec changes + fix upstream related issues ( #6468 )
...
* reworked some of the das core specs, pr'd to check whether whether the conflicting type issue is centric to my machine or not
* bumped nim-blscurve to 9c6e80c6109133c0af3025654f5a8820282cff05, same as unstable
* bumped nim-eth2-scenarios, nim-nat-traversal at par with unstable, added more pathches, made peerdas devnet branch backward compatible, peerdas passing new ssz tests as per alpha3, disabled electra fixture tests, as branch hasn't been rebased for a while
* refactor test fixture files
* rm: serializeDataColumn
* refactor: took data columns extracted from blobs during block proposal to the heap
* disable blob broadcast in pd devnet
* fix addBlock in message router
* fix: data column iterator
* added debug checkpoints to check CI
* refactor if else conditions
* add: updated das core specs to alpha 3, and unit tests pass
2024-08-05 19:27:39 +05:30
Agnish Ghosh
cf40d7faae
cleanup for debugs, complete
2024-07-08 11:39:50 +05:30
Agnish Ghosh
5eb854bfcd
checkpoint 2 cleanup
2024-07-07 19:48:56 +05:30
Agnish Ghosh
c14b59264c
add: checkpoints for debug support
2024-07-07 03:01:32 +05:30
Agnish Ghosh
74ee8bb74d
refactor cells and proofs logic + fix edge cases
2024-07-06 13:24:51 +05:30
Agnish Ghosh
adc717c3d0
change return type for get dc
2024-07-06 00:28:55 +05:30
Agnish Ghosh
fab427d65f
enable dc in gossip and message router
2024-07-05 14:34:51 +05:30
Agnish Ghosh
24b30a9cec
test kurtosis
2024-07-04 19:20:53 +05:30
Agnish Ghosh
fe183e7465
change timings
2024-07-04 19:14:16 +05:30
Agnish Ghosh
c6662bd914
reenable blobs in block proposal
2024-07-04 11:46:40 +05:30
Agnish Ghosh
152d276d78
added reconstruction logic
2024-07-03 21:50:52 +05:30
Agnish Ghosh
18e3ba2a39
fix: get_data_column_sidecar
2024-06-26 12:26:37 +05:30
Agnish Ghosh
87bc91febe
fix: message router
2024-06-26 02:38:04 +05:30
Agnish Ghosh
aa390e9ada
rm: message router logic for data column, need to move it
2024-06-26 02:04:06 +05:30
Agnish Ghosh
791d2fb0d1
add: forward and backward syncing for data columns, broadcasting data columns created from blobs, added dc support to sync_queue
2024-06-24 17:32:06 +05:30
Jacek Sieka
d191b35e2e
electra: attestatoin sending ( #6296 )
2024-05-17 17:34:46 +02:00
tersec
3f972a2ca5
add some support for electra aggregated attestations ( #6283 )
2024-05-14 06:12:35 +02:00
tersec
d139c92df9
explicitly scope AttesterSlashing and IndexedAttestation types to phase0 ( #6224 )
2024-04-21 05:49:11 +00:00
tersec
603c83522e
explicitly refer to phase0.{Attestation,TrustedAttestation} rather than sans module name ( #6214 )
2024-04-17 20:44:29 +00:00
Jacek Sieka
47704bde14
raises for beacon validators & router ( #5826 )
...
Changes here are more significant because of some good old tech debt in
block production which has grown quite hairy - the reduction in
exception handling at least provides some steps in the right direction.
2024-02-07 12:26:04 +01:00
tersec
3541cfe020
remove extraneous length checks in KZG batch proofs ( #5744 )
...
* remove extraneous length checks in KZG batch proofs
* re-add winservice import but only for Windows, to avoid UnusedImport warning
* also uses establishWindowsService
2024-01-15 16:53:34 +01:00
Jacek Sieka
62cbdeefc5
verify `genesis_time` more strictly ( fixes #1667 ) ( #5694 )
...
Bogus values lead to crashes down the line when timers overflow
2024-01-06 15:26:56 +01:00
Etan Kissling
d8a7f0df81
update Deneb for blob sidecar inclusion proofs ( #5565 )
...
`BlobSidecar` is no longer signed, instead use Merkle proof to link
blobs with block.
- https://github.com/ethereum/consensus-specs/pull/3531
Associated beacon-API / builder-specs still TBD; minimal changes done
to compile in similar style to previous spec, but not standardized yet.
- https://github.com/ethereum/beacon-APIs/pull/369
- https://github.com/ethereum/builder-specs/pull/90
2023-11-06 07:48:43 +01:00
Etan Kissling
7c45b8f98d
convert remaining `toFork` -> `kind` for consistency ( #5462 )
...
We currently have multiple ways to obtain `ConsensusFork` or
`LcDataFork` from a forky type. Rename `toFork` to `kind`
for a consistent API naming.
2023-09-27 15:10:28 +00:00
Etan Kissling
c211a3849e
remove `{.raises: [Defect].}` Nim 1.2 compatibility ( #5352 )
...
In Nim 1.6, `{.raises: [Defect].}` is no longer necessary. Remove it.
2023-08-25 11:29:07 +02:00
tersec
2d2d5bd549
fix blob sent/not sent logging ( #5316 )
2023-08-18 19:21:40 +00:00
Jacek Sieka
49729e1ef3
prevent concurrent `storeBlock` calls ( fixes #5285 ) ( #5295 )
...
When a block is introduced to the system both via REST and gossip at the
same time, we will call `storeBlock` from two locations leading to a
dupliace check race condition as we wait for the EL.
This issue may manifest in particular when using an external block
builder that itself publishes the block onto the gossip network.
* refactor enqueue flow
* simplify calling `addBlock`
* complete request manager verifier future for blobless blocks
* re-verify parent conditions before adding block
among other things, it might have gone stale or finalized between one
call and the other
2023-08-17 15:12:37 +02:00
Etan Kissling
5b70a686e3
further adjust `test_keymanager_api` logs ( #5259 )
...
It is still unclear how `test_keymanager_api` sometimes fails in CI;
further adjust logging parameters.
2023-08-05 13:12:44 +00:00
Etan Kissling
50dfd846f0
fix inconsistent capitalization ( #5240 )
...
Two cases of inconsistent capitalization, fix them.
2023-08-03 18:53:32 +02:00
henridf
7b0e3b1c04
Review feedbac from #5106 ( #5141 )
2023-06-29 01:17:54 +00:00
henridf
1234900065
Add blob handling to message router ( #5106 )
...
* Add blob handling to message router
* address review feedback
* Fix typos
2023-06-28 17:55:31 +00:00
henridf
0f8866d672
Add Deneb beacon API types ( #5060 )
...
* Add Deneb beacon API types
- Introduce the `ProduceBlockResponseV2` type for handling responses to `GET /eth/v2/validator/blocks/{slot}` (https://ethereum.github.io/beacon-APIs/?urls.primaryName=dev#/Validator/produceBlockV2 )
- Introduce the `RestPublishedSignedBlockContents` type for handling the request body to `POST /eth/v1/beacon/blocks` (https://ethereum.github.io/beacon-APIs/?urls.primaryName=dev#/ValidatorRequiredApi/publishBlock )
And a few other small changes towards Deneb block production support.
* Address review feedback
* Post-rebase fixes
2023-06-19 08:56:52 +00:00
tersec
7a7573d7d0
fix chronos done -> completed deprecation warnings ( #5016 )
2023-06-01 10:04:30 +02:00
henridf
1cf777c64b
Fix sync for blocks older than MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS ( #4977 )
...
When doing sync for blocks older than
MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS, we skip the blobs by range
request, but we then pass en empty blob sequence to
validation, which then fails.
To fix this: Use an Option[Blobsidecars] to allow expressing the
distinction between "empty blob sequence" and "blobs unavailable". Use
the latter for "old" blocks, and don't attempt to run blob validation.
2023-05-19 16:25:11 +00:00