Zahary Karadjov
ff1e07783c
Local simulation suitable for capturing light client syncing data
2022-12-12 13:52:12 +02:00
tersec
e3c062189a
eip4844 `block_sim` ( #4405 )
2022-12-09 21:39:11 +00:00
Jacek Sieka
657d571e25
Use same skipping tense as other logs
2022-12-09 20:15:46 +01:00
Jacek Sieka
6e2a02466e
unify bn/vc doppelganger detection ( #4398 )
...
* fix REST liveness endpoint responding even when gossip is not enabled
* fix VC exit code on doppelganger hit
* fix activation epoch not being updated correctly on long deposit
queues
* fix activation epoch being set incorrectly when updating validator
* move most implementation logic to `validator_pool`, add tests
* ensure consistent logging between VC and BN
* add docs
2022-12-09 17:05:55 +01:00
tersec
94653b0b71
fix bellatrix web3signer client-side beacon block signing requests ( #4407 )
2022-12-08 21:57:47 +00:00
Etan Kissling
bbf1d6030c
add hooks for observing LC progress ( #4401 )
...
For Fluffy injection, add observer callbacks that get called whenever
new light client data is sucecssfully processed.
```
proc onLightClientObject(
lightClient: LightClient, obj: SomeLightClientObject) =
info "New LC object", obj
lightClient.bootstrapObserver =
proc(lightClient: LightClient, obj: altair.LightClientBootstrap) =
lightClient.onLightClientObject(obj)
lightClient.updateObserver =
proc(lightClient: LightClient, obj: altair.LightClientUpdate) =
lightClient.onLightClientObject(obj)
lightClient.finalityUpdateObserver =
proc(lightClient: LightClient, obj: altair.LightClientFinalityUpdate) =
lightClient.onLightClientObject(obj)
lightClient.optimisticUpdateObserver =
proc(lightClient: LightClient, obj: altair.LightClientOptimisticUpdate) =
lightClient.onLightClientObject(obj)
```
2022-12-08 16:24:16 +00:00
tersec
dee5af58d6
eip4844 light client tests; avoid case object out-of-bound array reads ( #4404 )
2022-12-08 17:21:53 +01:00
tersec
50bcc48e17
eip4844 block/slot sanity and transition tests ( #4399 )
2022-12-08 02:07:41 +00:00
tersec
2932d3b808
extent `BeaconStateFork` enum ( #4396 )
2022-12-07 16:47:23 +00:00
zah
d30cb8baf1
Support for obtaining deposit snapshots during trustedNodeSync ( #4303 )
...
Other changes:
* More optimal search for TTD block.
* Add timeouts to all REST requests during trusted node sync.
Fixes #4037
* Removed support for storing a deposit snapshot in the network
metadata.
2022-12-07 12:24:51 +02:00
tersec
7cf432b155
eip4844 fork and epoch transition tests; some eip4844 gossip ( #4393 )
2022-12-06 16:43:11 +00:00
tersec
031780b612
eip4844 operations tests ( #4392 )
2022-12-06 12:40:13 +00:00
Eugene Kabanov
a311f04a19
Implementation for REST /eth/v1/validator/liveness/{epoch} endpoint. ( #4381 )
...
Switch VC to use /eth/v1/validator/liveness/{epoch} endpoint instead of nimbus one.
2022-12-06 12:29:00 +01:00
tersec
415b11aa67
EIP4844 tweaks to pass SSZ consensus object tests ( #4390 )
2022-12-05 21:36:53 +00:00
Etan Kissling
996a0bdcdc
fix crash when calling MEV rpc with MEV disabled ( #4389 )
...
Avoid `/eth/v1/beacon/blinded_blocks` crash without `--payload-builder`.
2022-12-05 19:41:52 +00:00
henridf
f0329b2212
Types and scaffolding for EIP-4844 ( #4365 )
...
* Types and scaffolding for EIP-4844
This commit adds the EIP-4844 spec types, and fills in
scaffolding/boilerplate for the use of these types across the repo.
None of the actual EIP-4844 logic is introduced yet.
This follows the pattern used by @tersec when introducing Capella (#4276 ).
* use eth2-networks fork
* review feedback: add static check EIP4844_FORK_EPOCH == FAR_FUTURE_EPOCH
* review feedback: remove EIP4844 from /eth/v1/config/spec response
* Cleanup / review feedback
* Fix REST test
2022-12-05 16:29:09 +00:00
tersec
7e5f40e04c
remove built-in Ropsten support ( #4280 )
...
* remove built-in Ropsten support
* link to ropsten shutdown-specific blog post
Co-authored-by: zah <zahary@status.im>
2022-12-05 11:15:00 +02:00
tersec
38827d776c
capella gossip support ( #4386 )
2022-12-04 08:42:03 +01:00
tersec
2f228e3fbd
deprecate `/eth2/beacon_chain/req/beacon_blocks_by_{range,root}/1/` ( #4378 )
...
* deprecate `/eth2/beacon_chain/req/beacon_blocks_by_{range,root}/1/`
* remove completely
2022-12-02 16:24:55 +00:00
tersec
5c16062de9
remove all but truly stub support for `SHARDING_FORK_{EPOCH,VERSION}` ( #4385 )
2022-12-02 13:33:18 +01:00
tersec
4e71e77da7
structure for supporting capella block production ( #4383 )
2022-12-02 08:39:01 +01:00
Zahary Karadjov
c24286e676
Merge branch 'stable' into unstable
2022-12-01 19:30:51 +02:00
Zahary Karadjov
99dc572fa6
Some refinements to the 22.11.0 release notes
2022-12-01 18:23:27 +02:00
tersec
c0cacd2561
use safer case object transitions ( #4379 )
2022-12-01 14:36:44 +02:00
zah
7c783644a2
Fix and document some usages of defaultRuntimeConfig ( #4147 )
...
Other changes:
* Make the light client store compatible with phase0-only networks
and simulations
2022-12-01 11:25:21 +00:00
Zahary Karadjov
7dd4718735
Version 22.11.0
2022-12-01 07:38:54 +02:00
tersec
474b0d8502
`withUpdatedState` injects `updatedState` rather than `state` template ( #4375 )
2022-11-30 16:37:23 +02:00
tersec
096c43db59
don't try to access .error of Opt ( #4377 )
2022-11-30 12:34:31 +00:00
tersec
d51d7de10b
don't access Result.error when not error ( #4376 )
...
* don't access Result.error when not error
* correct `if` parity
* other error
2022-11-30 14:08:48 +02:00
Zahary Karadjov
fbbab3bfef
Add version metric for the VC; Enable VC metrics in the local simulation
2022-11-30 12:47:11 +02:00
Etan Kissling
2e09011d49
persist LC sync progress across restarts ( #4371 )
...
Persist the latest finalized header and sync committee across restarts
of `nimbus_light_client` to avoid redoing time-consuming bootstrap step.
2022-11-30 04:45:03 +01:00
tersec
9572bb8721
fix effective merge conflict between #s 4357 and 4358 around Withdrawal symbol ambiguity ( #4370 )
2022-11-29 11:04:36 +00:00
Eugene Kabanov
6c07c6e625
Address inaccurate time calculation for waitForBlockPublished(). ( #4368 )
...
Address #4353 .
2022-11-29 12:52:21 +02:00
tersec
df54470b13
verify `CAPELLA_FORK_EPOCH == FAR_FUTURE_EPOCH` for supported networks ( #4369 )
2022-11-29 09:12:25 +01:00
tersec
ed672113bc
support engine API execution payloads with withdrawals ( #4358 )
2022-11-29 05:02:16 +00:00
Jacek Sieka
cd160b5650
more strict read-only database mode ( #4362 )
...
* avoid creating pre-altair backwards compatibility tables
* allow running ncli_db era export without above tables present
* drop unused pre-altair backwards compatibility tables
* run benchmark on read-ronly database
* fix running benchmark from genesis
2022-11-28 23:21:58 +00:00
Eugene Kabanov
07885a7210
Fix unexpected block proposal cancellation. ( #4367 )
2022-11-28 22:00:44 +01:00
tersec
cf58fa9573
remove unused types from datatypes/bellatrix and capella ( #4366 )
2022-11-28 16:30:38 +00:00
Etan Kissling
c941dc801f
bump `nim-eth`, extend empty block fallback for Capella ( #4357 )
...
Implements `emptyPayloadToBlockHeader` for Capella.
https://github.com/status-im/nim-eth/pull/562
2022-11-28 14:41:25 +01:00
tersec
3d829b8755
fix unguarded result access
2022-11-27 00:49:30 +00:00
Dustin Brody
92826cf90e
increase builder API registration timeout
2022-11-27 00:07:37 +00:00
tersec
38298869ed
chunk large validator registrations ( #4364 )
2022-11-26 23:11:14 +00:00
tersec
c5d52f1b25
register validators for MEV regardless of whether attached to BN ( #4363 )
2022-11-26 18:50:42 +00:00
tersec
898684c175
REST server shouldn't create validation objects when optimistically synced ( #4361 )
2022-11-25 22:49:31 +00:00
tersec
806b4fd649
fix order of MEV signed block root assignment/checking ( #4360 )
2022-11-25 15:47:52 +02:00
zah
025c1a8b7c
The sync committee duties loop now starts after fork info to be available ( #4355 )
...
This is needed because the service needs to call `forkAtEpoch()` as part
of its operation.
2022-11-24 22:19:58 +00:00
tersec
61c5ac32d8
automated consensus spec ref URL update to v1.3.0-alpha.1 ( #4354 )
2022-11-24 19:07:02 +00:00
Zahary Karadjov
b7b460cf57
Log more data on the 'Unable to retrieve blinded block data' error
2022-11-24 18:35:38 +02:00
Jacek Sieka
41f21b2688
era: fix verification of era 1 ( #4351 )
...
it has block 0 which is special
2022-11-24 15:38:56 +00:00
tersec
1fceb33b2e
more capella ( #4350 )
2022-11-24 14:38:07 +00:00