tersec
21aeeaf561
automated consensus spec URL updating to v1.5.0-alpha.5 ( #6504 )
2024-08-21 14:25:19 +02:00
tersec
f258cba816
some v1.5.0-alpha.4 consensus spec URL updates ( #6485 )
2024-08-10 07:09:37 +02:00
tersec
904318cf83
automated consensus spec URL updating to v1.5.0-alpha.4 ( #6483 )
2024-08-09 18:24:49 +02:00
tersec
c0fc0f41dd
calculate next slot's withdrawals properly even across epoch boundary ( #6470 )
2024-08-06 13:33:16 +02:00
tersec
ebd0217a10
fix is_eligible_for_activation_queue for electra ( #6427 )
2024-07-15 21:08:20 +02:00
tersec
9b6b42c8f9
some consensus spec URL updates to v1.5.0-alpha.3 ( #6382 )
2024-06-22 07:28:19 +02:00
Etan Kissling
22b5bc6256
cleanup Electra fork references ( #6372 )
...
Adjust two fork references to match surrounding code style.
2024-06-20 21:09:41 +02:00
tersec
88fa8b17ea
automated consensus spec URL updating to v1.5.0-alpha.3 ( #6364 )
2024-06-16 02:59:25 +02:00
tersec
0fab9682a6
use EF consensus-specs v1.5.0-alpha.3 test vectors ( #6362 )
2024-06-16 00:15:27 +02:00
tersec
b56a671122
fix most ConvFromXtoItselfNotNeeded hints and unhide remaining ones ( #6307 )
2024-05-22 13:56:37 +02:00
Jacek Sieka
045c4cf185
electra attestation updates ( #6295 )
...
* electra attestation updates
In Electra, we have two attestation formats: on-chain and on-network -
the former combines all committees of a slot in a single committee bit
list.
This PR makes a number of cleanups to move towards fixing this -
attestation packing however still needs to be fixed as it currently
creates attestations with a single committee only which is very
inefficient.
* more attestations in the blocks
* signing and aggregation fixes
* tool fix
* test, import
2024-05-17 15:37:41 +03:00
tersec
1c3aaa7be2
add (Signed)AggregateAndProof SSZ tests ( #6285 )
2024-05-14 13:51:06 +02:00
tersec
9c669cf57a
some debugRaiseAssert to debugComment; unblock some spec tests ( #6284 )
2024-05-14 12:19:24 +03:00
tersec
6b8061b5d6
automated consensus spec URL updating to v1.5.0-alpha.2 ( #6279 )
2024-05-09 05:03:10 +00:00
tersec
e70fa6d6de
rename ElectraIndexedAttestation/ElectraAttesterSlashing for consistency ( #6252 )
2024-04-29 04:19:10 +02:00
tersec
abc8bbbf23
add EF consensus spec test Electra fork and transition fixtures ( #6251 )
2024-04-28 16:13:17 +02:00
tersec
6119389c3a
add EF consensus spec test Electra attestation operations fixture ( #6248 )
2024-04-28 00:52:14 +00:00
tersec
34ba05f4d3
add EF consensus spec test Electra deposits operations fixture ( #6243 )
2024-04-26 07:18:44 +00:00
tersec
b0f58a58b6
add EF consensus spec test Electra consolidation operations fixture ( #6235 )
2024-04-25 18:50:54 +00:00
tersec
8c4ddd64c0
add EF consensus spec test attester slashing, proposer slashing, voluntary exit, and execution layer withdrawal request tests ( #6234 )
2024-04-25 08:41:17 +00:00
tersec
f53271eaaa
add rest of EF consensus spec test Electra epoch transition fixture(s) ( #6232 )
2024-04-24 12:28:47 +00:00
tersec
87452374e4
add Electra SSZ object test fixture ( #6225 )
2024-04-22 09:00:38 +00:00
tersec
e4b0e24614
add compounding withdrawal helpers ( #6217 )
2024-04-18 10:12:37 +00:00
tersec
0132f5d689
some consensus spec v1.4.0 spec URL updates ( #6215 )
2024-04-18 03:00:04 +02:00
tersec
867995acd1
some consensus spec v1.4.0 spec URL updates ( #6208 )
2024-04-17 05:51:16 +02:00
tersec
937cc62b85
block_sim runs electra ( #6181 )
2024-04-07 09:58:11 +02:00
tersec
27ec2893ff
rm unused parameters of get_state_exit_queue_info() ( #6167 )
2024-04-03 01:45:57 +00:00
tersec
109007dc93
avoid quadratic behavior exiting validators ( #6161 )
...
* avoid quadratic behavior exiting validators
* fix libnfuzz callers
2024-04-02 12:18:40 +00:00
tersec
7a3edb6961
more initialize_validator_exit optimization ( #6146 )
2024-03-27 09:18:50 +01:00
tersec
f9e5294802
dump EL-INVALID blocks if requested the same way as CL-INVALID blocks; optimize epoch transition validator exit ( #6144 )
2024-03-27 04:34:56 +01:00
Etan Kissling
5d42859176
make `Gwei` `distinct` ( #6090 )
...
#6087 introduced a subtle change to `nim-web3` resulting in `Gwei` to be
serialized differently than before. Using a `distinct` type for `Gwei`
improves type safety and avoids such problems in the future.
2024-03-19 14:22:07 +01:00
tersec
0a6d189161
automated consensus spec URL updating to v1.4.0 ( #6074 )
2024-03-14 07:26:36 +01:00
tersec
2a13c09615
add proposer reward accounting to block transitions ( #6022 )
...
* add proposer reward accounting to block transitions
* Update beacon_chain/spec/state_transition_block.nim
Co-authored-by: Etan Kissling <etan@status.im>
---------
Co-authored-by: Etan Kissling <etan@status.im>
2024-03-04 17:00:46 +00:00
tersec
fef831d92a
rm unused ForkedTrustedBeaconBlock; add some Electra overloads to consensus_object_pools; Electra BeaconBlock gossip support ( #5965 )
2024-02-26 06:49:12 +00:00
tersec
a4f4a35845
Revert "initial Electra support skeleton" ( #5955 )
...
* Revert "initial Electra support skeleton (#5946 )"
This reverts commit d09bf3b587
.
* Update test_signing_node.nim
2024-02-25 19:42:44 +00:00
tersec
d09bf3b587
initial Electra support skeleton ( #5946 )
2024-02-24 13:44:15 +00:00
tersec
0f155ebf95
some consensus spec v1.4.0-beta.7 spec URL updates ( #5945 )
2024-02-22 02:42:57 +00:00
tersec
c73d7c6f6f
automated consensus spec URL updating to v1.4.0-beta.7 ( #5942 )
2024-02-21 19:44:48 +00:00
Jacek Sieka
1ef7d237cc
Shared validator pubkey ( #5883 )
...
This PR allows sharing the pubkey data between validators by using a
thread-local cache for pubkey data, netting about a 400mb mem usage
reduction on holesky due to us keeping 3 permanent + several ephemeral
state copies in memory at all times and each state copy holding a full
validator.
The PR also introduces a hash cache for the key which gives ~14% speedup
for a full state `hash_tree_root` - the key makes up for a large part of
the `Validator` htr time.
Finally, the time it takes to copy a state goes down as well from ~80m
ms to ~60, for reasons similar to htr.
We use a `ptr` even if a `ref` could in theory have been used - there is
not much practical benefit to a `ref` (given it's mutable) while a `ptr`
is cheaper and easier to copy (when copying temporary states).
We could go further and cache a cooked pubkey but it turns out this is
quite intrusive - in all the relevant places, we're already using a
cooked key from the immutable validator data so there are no immediate
performance gains of doing so while managing the compressed -> cooked
key mapping would become more difficult - something for a future PR
perhaps.
Co-authored-by: Etan Kissling <etan@status.im>
2024-02-21 20:06:19 +01:00
tersec
6c53dc1e11
automated consensus spec URL updating to v1.4.0-beta.6 ( #5804 )
2024-01-20 11:19:47 +00:00
Jacek Sieka
e4a1ae67df
ssz: bump ( #5717 )
...
height-based merkleizer
2024-01-11 18:34:44 +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
tersec
9c6ba7d142
consensus spec v1.4.0-beta.5 URL updates ( #5672 )
2023-12-16 03:27:06 +01:00
tersec
4776fecc33
consensus spec v1.4.0-beta.5 URL updates ( #5655 )
2023-12-06 22:16:55 +00:00
tersec
9efb2958ec
automated consensus spec URL updating to v1.4.0-beta.5 ( #5647 )
2023-12-05 03:34:45 +01:00
tersec
c96163dbca
update some consensus spec URLs to v1.4.0-beta.4 ( #5594 )
2023-11-11 06:27:53 +01:00
tersec
7e3aeaea09
automated consensus spec URL updating to v1.4.0-beta.4 ( #5577 )
2023-11-08 05:28:03 +00:00
tersec
556d5e7114
rm unused code ( #5538 )
2023-11-01 05:53:09 +01:00
tersec
62d59daaa7
consensus-spec URL updates to v1.4.0-beta.3 ( #5541 )
2023-10-30 06:44:43 +00:00
tersec
fd21882e24
improve test coverage of post-Bellatrix initialize_beacon_state_from_eth1 ( #5517 )
2023-10-24 01:58:52 +00:00