Dankrad Feist
ca8a51fcf9
More CI tests for polynomial commitments
2023-03-06 22:56:17 +00:00
dankrad
86fb82b221
Test generators for kzg-4844 libraries ( #3274 )
...
Arkworks integration and test generators for kzg-4844 libraries
2023-03-02 20:49:10 +00:00
Hsiao-Wei Wang
6baa9531a4
Merge pull request #3250 from benjaminion/get-weight
...
Change get_latest_attesting_balance() to get_weight()
2023-02-28 21:29:22 +08:00
Danny Ryan
4e48ae3fe7
Merge pull request #3265 from ethereum/bump-version
...
bump VERSION.txt to 1.3.0-rc.3
2023-02-20 10:40:10 -07:00
Hsiao-Wei Wang
7ff627e032
bump VERSION.txt to 1.3.0-rc.3
2023-02-21 01:14:46 +08:00
djrtwo
dff740752b
add deposit+bls_change test
2023-02-20 10:07:24 -07:00
Hsiao-Wei Wang
a7e45db9ac
Fix `verify_kzg_proof_batch` and the tests
2023-02-16 22:14:14 +08:00
Ben Edgington
7637158a2f
Change get_latest_attesting_balances() to get_weight()
2023-02-15 11:39:33 +00:00
Danny Ryan
89f2eae318
Merge pull request #3218 from protolambda/excess-data-gas-field-position
...
eip4844: move excess data gas field to end of execution payload for merkle proof path compat
2023-02-14 07:50:25 -07:00
George Kadianakis
fc4e1a9acf
EIP4844: compute_kzg_proof() can now create proofs within the domain ( #3243 )
...
This will be used by optimistic rollups to create proofs about past data
2023-02-14 14:50:44 +02:00
Hsiao-Wei Wang
7b5acbfd21
Fix Capella fork test assertions
2023-02-10 00:30:00 +08:00
Paul Harris
078e1cc871
fix references to eip4844
2023-02-08 09:22:28 +10:00
Paul Harris
0bf006cc06
Merge remote-tracking branch 'upstream/dev' into 3207
2023-02-02 16:34:34 +10:00
Hsiao-Wei Wang
366e3b64c4
hotfix: `transition_to_slot_via_block` only return unsigned block
2023-01-27 15:37:12 +01:00
Hsiao-Wei Wang
a2b3cd33ef
bump VERSION.txt to 1.3.0-rc.2
2023-01-27 18:54:09 +08:00
Hsiao-Wei Wang
9ab147860c
Update transtion testgen
2023-01-27 11:16:31 +01:00
Hsiao-Wei Wang
3e78448fd1
Address PR feedback
2023-01-27 10:44:32 +01:00
Hsiao-Wei Wang
230dfb011e
Apply suggestions from code review
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2023-01-26 23:21:07 +08:00
Hsiao-Wei Wang
507a7ec113
Add BLS_TO_EXECUTION_CHANGE fork transition tests
2023-01-26 10:14:53 +01:00
Hsiao-Wei Wang
e3b42ca397
Add activate and partial withdrawal tests
2023-01-25 16:15:39 +01:00
Hsiao-Wei Wang
065b303dca
Add tests of mixing top-ups and withdrawals, rename old test case
2023-01-25 10:59:30 +01:00
George Kadianakis
2626126935
EIP4844: compute_kzg_proof() now takes bytes as input ( #3219 )
2023-01-24 14:02:22 +01:00
Paul Harris
317facbd64
Replaced EIP4844 references with Deneb
...
Fixes #3207
2023-01-23 15:08:34 +01:00
Hsiao-Wei Wang
0f2d25d919
Merge pull request #3213 from etan-status/ee-mockgwei
...
Use `Gwei` for `Withdrawal` amount in mock-EE
2023-01-17 23:00:35 +08:00
Hsiao-Wei Wang
04d8f28cf6
Merge pull request #3214 from asn-d6/barycentric_no_assert
...
EIP4844: Handle barycentric evaluation at roots of unity
2023-01-17 23:00:17 +08:00
George Kadianakis
20dc6821ab
EIP4844: Unused i in for loop
...
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2023-01-17 16:18:16 +02:00
George Kadianakis
c6453e215d
EIP4844: Make extra sure we didn't win the jackpot
2023-01-17 16:16:46 +02:00
Hsiao-Wei Wang
521de12d9b
Merge pull request #3151 from etan-status/lc-eph
...
Add `ExecutionPayloadHeader` to LC data
2023-01-17 21:33:35 +08:00
George Kadianakis
6e5df21f7d
EIP4844: Also add unittest for barycentric outside the domain
2023-01-16 17:52:10 +02:00
George Kadianakis
296ba921c9
EIP4844: Handle barycentric evaluations at roots of unity
2023-01-16 17:51:50 +02:00
Etan Kissling
52d978b12e
Use `Gwei` for `Withdrawal` amount in mock-EE
...
Updates the EL block hash computation for pytests to match latest spec.
Notably, use `Gwei` for `Withdrawal` amount consistently.
Also fix `excess_data_gas` not being correctly accounted for.
https://github.com/ethereum/execution-apis/pull/354
https://github.com/ethereum/EIPs/pull/6325
2023-01-15 12:13:35 +01:00
Etan Kissling
ffd047c6fa
Consistent test step naming
2023-01-14 14:51:59 +01:00
Hsiao-Wei Wang
a5273905ef
Update signature value due to #3206
2023-01-13 23:40:31 +08:00
Hsiao-Wei Wang
9b3f8881b4
Fix lint
2023-01-13 23:39:24 +08:00
Hsiao-Wei Wang
75def3c88e
PR feedback from @ralexstokes
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2023-01-13 23:39:16 +08:00
Hsiao-Wei Wang
64f609af18
Add a test case from staking-deposit-cli
2023-01-13 23:39:03 +08:00
Hsiao-Wei Wang
427a6e809f
Merge pull request #3206 from ethereum/btec-fork-version
...
MUST use `GENESIS_FORK_VERSION` to sign `BLSToExecutionChange` message
2023-01-13 23:29:21 +08:00
Danny Ryan
3dd7e3583f
bump VERSION.txt to 1.3.0-rc.1
2023-01-13 08:24:43 -07:00
Hsiao-Wei Wang
e1df31818b
fix typo
2023-01-13 23:18:29 +08:00
djrtwo
d4eaf4bff4
add invalid test for BLSChange genesis_validators_root
2023-01-13 08:07:21 -07:00
Etan Kissling
82d6267951
Merge branch 'dev' into lc-eph
2023-01-12 18:44:54 +01:00
Hsiao-Wei Wang
2b2ffb5229
Merge pull request #3190 from etan-status/lc-headerwrapper
...
Add `LightClientHeader` wrapper
2023-01-13 00:40:44 +08:00
Hsiao-Wei Wang
730a7afe49
Always use `GENESIS_FORK_VERSION` to sign `BLSToExecutionChange` message
2023-01-12 23:28:41 +08:00
Hsiao-Wei Wang
a2099dabf7
Add `test_invalid_previous_fork_version`
2023-01-12 03:23:17 +08:00
Etan Kissling
a14edb1967
Merge branch 'dev' into lc-headerwrapper
2023-01-10 15:29:34 +01:00
Etan Kissling
53a95f0007
Merge branch 'dev' into lc-eph
2023-01-10 13:43:15 +01:00
Hsiao-Wei Wang
9c4500533f
Merge branch 'dev' into pr3121
2023-01-10 16:47:21 +08:00
Etan Kissling
79a717c8f6
Merge branch 'dev' into lc-headerwrapper
2023-01-06 19:45:18 +01:00
Hsiao-Wei Wang
8b14345143
Fix test file name
2023-01-07 01:49:23 +08:00
Danny Ryan
ed1c6be132
Merge pull request #3185 from ethereum/fc-is_data_available
...
Move `is_data_available` check to fork-choice `on_block`
2023-01-06 10:55:29 -05:00
Hsiao-Wei Wang
e154b3414c
Move `validate_blobs_sidecar` to fork-choice and add spec into execution spec scope
2023-01-06 23:19:44 +08:00
Danny Ryan
8255618206
bump VERSION.txt
...
to 1.3.0-rc.0
2023-01-06 08:16:14 -07:00
Danny Ryan
449db6d798
Merge pull request #3187 from ethereum/fix-from_syncing_to_invalid
...
Ensure that no duplidate block hashes in `sync/from_syncing_to_invalid` test case
2023-01-06 10:14:06 -05:00
Danny Ryan
75937e5b55
Merge pull request #3181 from terencechain/4844-enable-withdrawal
...
EIP4844: Enable withdrawal
2023-01-06 10:12:57 -05:00
Etan Kissling
375436094c
Merge branch 'dev' into lc-eph
2023-01-05 13:53:29 +01:00
Etan Kissling
5c64a2047a
Add `LightClientHeader` wrapper
...
In Altair, light client sync protocol exchanges `BeaconBlockHeader`
structures for tracking current progress. Wrapping `BeaconBlockHeader`
inside a `LightClientHeader` allows future extensions of this header,
e.g., to also track `ExecutionPayloadHeader`.
Note: This changes the JSON REST format by adding a `beacon` nesting.
For SSZ, the serialization format stays same (but overall root changes).
2023-01-05 13:36:04 +01:00
Hsiao-Wei Wang
0777a52f55
Merge pull request #3149 from etan-status/lc-toheader
...
Add `block_to_light_client_header` helper
2023-01-05 12:12:36 +08:00
Etan Kissling
ce7fd412cc
Add test for LC data spanning 3 forks
2023-01-04 19:44:10 +01:00
Etan Kissling
e5cda1745f
Run fork test for EIP4844
2023-01-04 19:15:34 +01:00
Hsiao-Wei Wang
9d14dcd8b0
Ensure that no duplidate block hashes
2023-01-04 18:09:38 +08:00
Hsiao-Wei Wang
dba75eece9
Enable Capella feature in eip4844 fork
...
Fix lint
2023-01-04 01:40:46 +08:00
Etan Kissling
b0471511e5
Merge branch 'dev' into lc-eph
2023-01-03 15:36:37 +01:00
Hsiao-Wei Wang
dcacb7164f
Rename `block_batch_root` to `block_summary_root` and `state_batch_root` to `state_summary_root`
2023-01-03 21:50:06 +08:00
Hsiao-Wei Wang
1cfabcbe54
Rename `HistoricalBatchSummary` -> `HistoricalSummary` and `historical_batches` -> `historical_summaries`
2023-01-02 23:07:00 +08:00
Hsiao-Wei Wang
84592f101b
Add tests for `process_historical_batches_update`
2022-12-16 01:01:00 +08:00
Danny Ryan
302f54bfca
bump version.txt
2022-12-14 09:26:04 -07:00
Danny Ryan
f7187a6657
Merge pull request #3156 from ethereum/kzg-trusted-setup
...
Update G2 trusted setup length to 65
2022-12-14 08:15:53 -07:00
Danny Ryan
991f81770b
Merge pull request #3157 from ethereum/balance-op
...
Add tests to test sync aggregate's order of balance operation
2022-12-14 08:15:09 -07:00
Hsiao-Wei Wang
c7e102a5e5
PR feedback from @djrtwo and change the duplicate sync committee preconditions
2022-12-14 16:55:03 +08:00
Etan Kissling
02abdc311f
Merge branch 'dev' into lc-eph
2022-12-13 15:33:28 +01:00
Etan Kissling
74883fec7c
Merge branch 'dev' into ci-phasesconfig
2022-12-13 15:33:07 +01:00
Hsiao-Wei Wang
dc17b1e2b6
Merge pull request #3107 from etan-status/sf-epochoverrides
...
cleanup explicit fork enumerations in tests
2022-12-13 22:29:30 +08:00
Hsiao-Wei Wang
e9a7a6d40e
Merge pull request #3126 from etan-status/el-rlp
...
proper EL block hash implementation in tests
2022-12-13 22:28:53 +08:00
Etan Kissling
f24365fa36
Merge branch 'ci-phasesconfig' into lc-eph
2022-12-13 12:34:32 +01:00
Etan Kissling
c84862bfae
Avoid line continuation syntax
2022-12-13 12:34:14 +01:00
Etan Kissling
3bfac0e16e
Merge branch 'lc-toheader' into lc-eph
2022-12-13 12:31:12 +01:00
Etan Kissling
ef2a8b319d
Avoid line continuation syntax
2022-12-13 12:30:14 +01:00
Etan Kissling
af785068d8
Merge branch 'el-rlp' into lc-eph
2022-12-13 12:27:59 +01:00
Etan Kissling
666a90245e
Add EIP4844 support
...
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-12-13 11:54:44 +01:00
Hsiao-Wei Wang
2ac06c10d3
Update G2 trusted setup length to 65
2022-12-13 18:14:50 +08:00
Hsiao-Wei Wang
19c38dbac6
Add tests to test sync aggregate's order of operation
2022-12-13 17:35:34 +08:00
Hsiao-Wei Wang
c59b06cccd
Merge branch 'dev' into sf-epochoverrides
2022-12-13 16:13:21 +08:00
Hsiao-Wei Wang
da3f5af919
Test case naming clean up ( #3143 )
...
* Add @description decorator
* Unify test case naming style
* more clean ups
* Altair tests cleanup
* Clean up Altair and Bellatrix `process_deposit` tests
* Clean up Bellatrix tests
* Clean up Capella tests
* PR feedback from @ralexstokes
* Add comments on the deposit fork version tests
* Remove `test_incorrect_sig_other_version` since it is duplicate to `test_ineffective_deposit_with_bad_fork_version`
* Add `test_ineffective_deposit_with_current_fork_version`
2022-12-13 15:13:44 +08:00
Danny Ryan
06d6d3888f
Merge pull request #3095 from ralexstokes/bound-withdrawals-sweep
...
bound the maximum number of validators considered for withdrawals per sweep
2022-12-12 19:53:29 -07:00
Etan Kissling
a8dabc05a8
Add `test_eip4844_store_with_legacy_data` (fork test still nyi)
2022-12-12 19:08:45 +01:00
Danny Ryan
478b437b05
lint
2022-12-12 08:25:31 -07:00
Etan Kissling
dc05a3f19e
Rename test back
2022-12-12 13:13:25 +01:00
Etan Kissling
4df86632b6
Rename `legacy` --> `altair` in test name
2022-12-12 12:56:34 +01:00
Etan Kissling
7e6a990790
Merge branch 'ci-phasesconfig' into lc-eph
2022-12-12 12:15:44 +01:00
Etan Kissling
82ff974090
Emit config before calling test to ignore changes
2022-12-12 12:15:27 +01:00
Etan Kissling
2e97af2627
Add `ExecutionPayloadHeader` to LC data
...
While the light client sync protocol currently provides access to the
latest `BeaconBlockHeader`, obtaining the matching execution data needs
workarounds such as downloading the full block.
Having ready access to the EL state root simplifies use cases that need
a way to cross-check `eth_getProof` responses against LC data.
Access to `block_hash` unlocks scenarios where a CL light client drives
an EL without `engine_newPayload`. As of Altair, only the CL beacon
block root is available, but the EL block hash is needed for engine API.
Other fields in the `ExecutionPayloadHeader` such as `logs_bloom` may
allow light client applications to monitor blocks for local interest,
e.g. for transfers affecting a certain wallet. This enables to download
only the few relevant blocks instead of every single one.
A new `LightClientStore` is proposed into the Capella spec that may be
used to sync LC data that includes execution data. Existing pre-Capella
LC data will remain as is, but can be locally upgraded before feeding it
into the new `LightClientStore` so that light clients do not need to run
a potentially expensive fork transition at a specific time. This enables
the `LightClientStore` to be upgraded at a use case dependent timing at
any time before Capella hits. Smart contract and embedded deployments
benefit from reduced code size and do not need synchronization with the
beacon chain clock to perform the Capella fork.
2022-12-12 00:48:40 +01:00
Etan Kissling
9ab22b3ef3
Merge branch 'lc-accessors' into lc-eph
2022-12-12 00:41:31 +01:00
Etan Kissling
c1a6b127f1
Merge branch 'lc-toheader' into lc-eph
2022-12-12 00:38:34 +01:00
Etan Kissling
08a2080937
Merge branch 'ci-phasesconfig' into lc-eph
2022-12-12 00:36:13 +01:00
Etan Kissling
364d106ac3
Merge branch 'sf-epochoverrides' into lc-eph
2022-12-12 00:35:30 +01:00
Etan Kissling
0c3853e959
Avoid modifying caller `phases` (`kw` is shallow copy)
2022-12-11 23:41:08 +01:00
Alex Stokes
37e504e784
bound the maximum number of validators considered for withdrawals per sweep
2022-12-09 10:51:25 -07:00
Etan Kissling
0649e0662c
Allow selecting phase to emit, and fix combi with overrides
2022-12-07 22:37:40 +01:00
Etan Kissling
ae64c515f4
Merge branch 'dev' into ci-phasesconfig
2022-12-07 20:56:59 +01:00
Etan Kissling
0fb0b26742
Add accessors for LC header
...
Introduce `get_lc_beacon_slot` and `get_lc_beacon_root` accessors
similar to `get_current_slot(state)` to account for future extensions
to the light client header structure that may override how those fields
are accessed. Idea is to extend with execution accessors in the future.
2022-12-06 22:05:19 +01:00