Commit Graph

1798 Commits

Author SHA1 Message Date
Etan Kissling 754e9c3b10
Merge branch 'dev/etan/lc-electra' into feat_eip-7688 2024-06-25 14:57:39 +02:00
Etan Kissling 3f83028cf2
Merge branch 'unstable' into dev/etan/lc-electra 2024-06-22 10:48:08 +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 4c242c44aa
workaround `version-2-0`: `Error: cannot instantiate: 'SomeUnsignedInt'` 2024-06-21 15:26:11 +02:00
Etan Kissling 65ae4d8eb1
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.
2024-06-21 15:02:01 +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 350c4eaa39
rm Goerli remnant; add explanatory comment about opt sync validation (#6365) 2024-06-17 09:40:41 +00: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 a93ab7cf3b
Revert "bump nim-kzg4844 for gcc-14 compatibility (#6342)" (#6360)
This reverts commit c5326619a4.
2024-06-14 23:23:19 +00:00
Eugene Kabanov c5326619a4
bump nim-kzg4844 for gcc-14 compatibility (#6342)
* Bump nim-kzg4844.

* Fix code to use proper KZG types.

* Add missing coma.

* Fix compilation issue.

* Bump nim-kzg4844.
2024-06-14 00:46:03 +00:00
andri lim fb0494e739
Bump nim-eth for revert GasInt back to int64 (#6347)
* Bump nim-eth for revert GasInt back to int64

* Fix libnimbus_lc
2024-06-13 15:25:59 +02:00
Etan Kissling 20af24efdb
align field name across `SomeSig` (#6348)
`ValidatorSig` uses `blob` but `TrustedSig` uses `data`, aligning the
names reduces code duplication and improves clarity. It also simplifies
`StableContainer` compatibility checks.
2024-06-13 13:11:04 +00:00
Etan Kissling 2915833ce8
Merge branch 'dev/etan/cc-fieldname' into feat_eip-7688 2024-06-13 12:43:49 +02:00
Etan Kissling 6346916224
align field name across `SomeSig`
`ValidatorSig` uses `blob` but `TrustedSig` uses `data`, aligning the
names reduces code duplication and improves clarity. It also simplifies
`StableContainer` compatibility checks.
2024-06-13 12:41:56 +02:00
Etan Kissling 388f1cfa7b
align `StableContainer` types with latest EIP-7688 specs 2024-06-13 10:32:55 +02:00
andri lim 238589868c
Bump nim-web3 and nim-eth (#6345)
In nim-web3 all std.Option are replaced by results.Opt. The same goes in nim-eth, with additional fields name changes and GasInt changed from int64 to uint64.
2024-06-12 08:46:39 +07:00
tersec 598485ee1a
add consolidations block body packing plumbing and correct electra MEV block body htr override (#6335) 2024-06-10 05:05:51 +02:00
tersec e3d4ad5d39
properly (re)factor consolidation signature checking (#6334) 2024-06-09 19:37:41 +02:00
Eugene Kabanov 1cdb32222b
VC: Add block scoring (#6303)
* Add scoring for blocks.

* Update Alltests.
2024-05-29 10:07:39 +00:00
Etan Kissling c2777513bb
actually commit `stable.nim` 2024-05-27 14:44:13 +02:00
Etan Kissling d222f11edf
move `StableContainer` to `stable.nim` 2024-05-27 14:33:39 +02:00
Etan Kissling 36f939b514
Merge branch 'dev/etan/im-base' into feat_eip-7688 2024-05-27 14:22:34 +02:00
Etan Kissling 0e734286e4
move `InactivityScores` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-27 13:57:47 +02:00
Etan Kissling 8910de65a4
move `EpochParticipationFlags, SyncCommittee` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-27 13:56:38 +02:00
Etan Kissling ea58e9353f
move `(Signed)?Consolidation`, `Pending..(Deposit|Withdrawal)` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-27 13:52:09 +02:00
Etan Kissling 06e4ad5faa
move `KzgCommitments` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-27 13:47:05 +02:00
Etan Kissling ebf285f3dd
move `BLSToExecutionChange`, `SignedBLSToExecutionChange` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-27 13:38:29 +02:00
Etan Kissling fe058f9f04
Merge branch 'dev/etan/im-base' into feat_eip-7688 2024-05-26 15:22:12 +02:00
Etan Kissling 1384d7ee22
move `DepositReceipt`, `ExecutionLayerWithdrawalRequest` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-26 15:13:47 +02:00
Etan Kissling 0a0a27399b
move `Withdrawal`, `HistoricalSummary` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-26 15:08:18 +02:00
Etan Kissling bd0689f048
move `Transaction`, `ExecutionAddress` and `BloomLogs` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-26 14:59:49 +02:00
Etan Kissling ee5af9f7ee
move `SyncAggregate` to `base`
Preparation for EIP-7495 SSZ `StableContainer` which can only contain
immutable types in their fields.
2024-05-26 14:39:24 +02:00
Etan Kissling 0efc81d96d
use correct minimum size when reading block / state headers (#6263)
`sizeof` also includes padding between fields, while SSZ defines
`fixedPortionSize` (on type) or `sszSize` (on value) to denote
required bytes to encode. Switch forked block/state readers to SSZ size.
As blocks/states are much larger than the padding, this doesn't affect
practical use cases but is slightly more correct this way.
2024-05-25 07:30:05 +02:00
Etan Kissling 031036f0bc
Merge branch 'feat/eip-7495' into feat_eip-7688 2024-05-24 17:17:40 +02:00
tersec c7bf6fb542
rm debugRaiseAssert; clean up several debugComments (#6308)
* rm debugRaiseAssert; clean up several debugComments

* exception linting
2024-05-23 23:51:09 +02:00
Etan Kissling 44d8a8bde0
add EIP-7688 support
- https://eips.ethereum.org/EIPS/eip-7688
2024-05-22 16:27:22 +02:00
tersec b56a671122
fix most ConvFromXtoItselfNotNeeded hints and unhide remaining ones (#6307) 2024-05-22 13:56:37 +02:00
tersec 708b23f084
rm unused produceBlockV2Plain() RPC signature (#6304) 2024-05-22 07:47:03 +02:00
tersec 3e6990ccc4
rm unused ProduceBlockResponseV2 type (#6302) 2024-05-22 04:52:35 +02:00
tersec dd452f71d3
rm outdated/semi-duplicate execution layer withdrawal request processing (#6301) 2024-05-22 01:59:11 +02:00
Eugene Kabanov d7c5bc0397
[VC] Add builderBoostFactor support. (#6294)
* Initial commit.

* Replace localBlockValueBoost with builderBoostFactor.

* Add test.

* Update AllTests.

* Update options.md

* Recover `localBlockValueBoost` for BN-only mode.

* Address review comments.
2024-05-19 04:49:43 +03:00
Jacek Sieka d191b35e2e
electra: attestatoin sending (#6296) 2024-05-17 17:34:46 +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 69f13eaa51
add electra gossip transition 2024-05-15 13:30:49 +00:00
tersec d0400e408b
rename ExitV1 to WithdrawalRequestV1 (#6290) 2024-05-15 06:44:52 +02:00
tersec c1b9e82502
electra attestation gossip plumbing (#6287) 2024-05-14 19:01:26 +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 3f972a2ca5
add some support for electra aggregated attestations (#6283) 2024-05-14 06:12:35 +02:00