Commit Graph

114 Commits

Author SHA1 Message Date
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
Etan Kissling 514d4431ca
Use `bellatrix` in `upgrade_x_to_capella` helpers 2023-01-13 20:11:05 +01:00
Etan Kissling a580f82c7d
Use `beacon` wrapper in `upgrade_lc_header_to_capella` 2023-01-13 14:59:40 +01:00
Etan Kissling ca32fe8347
Add docstrings to explain empty header 2023-01-13 11:19:53 +01:00
Hsiao-Wei Wang 6a19cf568a
PR feedback from @terencechain: re-use `current_epoch` definition 2023-01-13 16:49:24 +08:00
Etan Kissling 82d6267951
Merge branch 'dev' into lc-eph 2023-01-12 18:44:54 +01:00
Hsiao-Wei Wang 4af46e7e78
Ignore `bls_to_execution_change` messages before `CAPELLA_FORK_EPOCH` 2023-01-12 23:47:36 +08:00
Hsiao-Wei Wang 730a7afe49
Always use `GENESIS_FORK_VERSION` to sign `BLSToExecutionChange` message 2023-01-12 23:28:41 +08:00
Etan Kissling 53a95f0007
Merge branch 'dev' into lc-eph 2023-01-10 13:43:15 +01:00
Hsiao-Wei Wang f057f530fe
Add `historical_summaries` setup to fork.md 2023-01-10 16:45:58 +08:00
Danny Ryan d679b2e80d
Update specs/capella/beacon-chain.md 2023-01-06 08:06:39 -07:00
Etan Kissling 375436094c
Merge branch 'dev' into lc-eph 2023-01-05 13:53:29 +01:00
Hsiao-Wei Wang 118daae6d9
Add notes for new state historical accumulators 2023-01-04 17:55:51 +08: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
Jacek Sieka b6ac1fa099
Update specs/capella/beacon-chain.md
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2022-12-20 07:46:18 +01:00
Hsiao-Wei Wang 84592f101b
Add tests for `process_historical_batches_update` 2022-12-16 01:01:00 +08:00
Hsiao-Wei Wang c185f91e00
Merge branch 'dev' into pr2649-tests 2022-12-15 22:56:04 +08:00
Etan Kissling 02abdc311f
Merge branch 'dev' into lc-eph 2022-12-13 15:33:28 +01: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
Danny Ryan 1f943f0d64
Update specs/capella/beacon-chain.md 2022-12-12 14:22:58 -07:00
Etan Kissling 700bef7a45
Fix `is_valid_light_client_header` 2022-12-12 13:39:14 +01:00
Etan Kissling e67ca3d309
Compute epoch only once for better readability 2022-12-12 13:09:18 +01:00
Etan Kissling 5028a806ad
Implicit init during fork transition 2022-12-12 12:45:43 +01:00
Etan Kissling 11d2a59948
Flip `is_valid_light_client_header` logic for extensibility 2022-12-12 12:33:58 +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
Alex Stokes 37e504e784
bound the maximum number of validators considered for withdrawals per sweep 2022-12-09 10:51:25 -07:00
Tim Beiko aae00a0bf6
Clarify that full withdrawals only apply to exited validators 2022-11-30 16:21:06 -08:00
Danny Ryan d4a9b97cd0
Merge pull request #3084 from ethereum/validator-note-for-bls-change
Add note to Capella validator guide about BLS to execution change
2022-11-10 11:32:04 -07:00
Danny Ryan 0e7d3555ea
minor copy edits 2022-11-10 11:12:33 -07:00
Danny Ryan 37996fc36c
Merge pull request #3068 from potuz/withdrawals_without_queues
Withdrawals without queues
2022-11-10 10:49:25 -07:00
Alex Stokes be85e9356a
Update specs/capella/validator.md
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-11-10 09:12:35 -05:00
Alex Stokes 0f93e9aad8
Update specs/capella/validator.md
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-11-10 09:12:10 -05:00
Potuz 7f266bcb0f Use next_validator_withdrawal_index 2022-11-10 08:33:11 -03:00
Potuz 710b124cdc fix last commit 2022-11-08 21:51:54 -03:00
Potuz 8f42e485c7 Add extra % 2022-11-08 19:53:58 -03:00
Alex Stokes 8bb1751f46
Add note to Capella validator guide about BLS to execution change 2022-11-07 15:22:26 -07:00
Potuz 99e2704c2c make tests pass 2022-11-07 17:56:01 -03:00
Potuz ac670e2c47 add phase0 sentence regarding process slots 2022-11-07 17:34:19 -03:00
Potuz 2f89f5096d Danny's review 1st pass 2022-11-07 17:29:56 -03:00
Hsiao-Wei Wang dac756efee
Minor clean up 2022-11-07 09:09:09 -05:00
Alex Stokes b5ecf44c91
add note about packing BLS to execution changes into a block 2022-11-04 16:41:07 -06:00
Alex Stokes c8d1614e7e
Apply suggestions from code review 2022-11-04 16:19:26 -06:00
ethDreamer 355ca296b8
Update specs/capella/p2p-interface.md
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-04 17:13:23 -05:00
ethDreamer 6c1fa0a485
Update specs/capella/p2p-interface.md
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-04 17:13:15 -05:00
ethDreamer 1f68c57a7b
Update specs/capella/p2p-interface.md
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-04 17:13:07 -05:00
Potuz 8488fb79d9 Alex Stokes' review 2022-11-04 18:47:56 -03:00
Potuz e15b02d16f lint 2022-11-04 09:13:21 -03:00
Potuz 22f803a038 name change and increment operator 2022-11-04 07:20:26 -03:00
Potuz 6e913ecbd2 rename to latest_withdrawal_validator_index 2022-11-03 20:23:35 -03:00