Commit Graph

1698 Commits

Author SHA1 Message Date
Eitan Seri- Levi
8dbab49286 Resolve merge conflicts 2026-02-26 13:19:00 -08:00
Eitan Seri- Levi
d370461dab Merge branch 'unstable' of https://github.com/sigp/lighthouse into gloas-payload-processing 2026-02-25 09:06:07 -08:00
Eitan Seri- Levi
12eddb561c fix new payload notifier 2026-02-24 22:49:57 -08:00
Lion - dapplion
d6bf53834f Remove merge transition code (#8761)
Co-Authored-By: dapplion <35266934+dapplion@users.noreply.github.com>
2026-02-25 03:20:28 +00:00
Jimmy Chen
e59f1f03ef Add debug spans to DB write paths (#8895)
Co-Authored-By: Jimmy Chen <jchen.tc@gmail.com>
2026-02-24 20:53:33 +00:00
Eitan Seri- Levi
38ef0d07e5 Update TODO 2026-02-24 12:17:12 -08:00
Eitan Seri- Levi
0761da770d Clean up comments 2026-02-24 12:15:52 -08:00
Eitan Seri- Levi
876e6899cd Some more TODOs 2026-02-24 12:14:30 -08:00
Eitan Seri- Levi
2093dc1f39 move execution pending envelolpe logic to its own file 2026-02-24 12:08:07 -08:00
Eitan Seri- Levi
30241f54c4 add load_snapshot_from_state_root that can be used when we've already aquired a 2026-02-24 11:35:01 -08:00
Eitan Seri- Levi
fc7d6c9d24 Add an additional defensive expected proposer check 2026-02-24 11:20:07 -08:00
Eitan Seri- Levi
147f2e22e0 use cached head and drop fork choice read lock earlier 2026-02-24 10:59:03 -08:00
Eitan Seri- Levi
6e89ba63be Added slot to logs 2026-02-24 10:51:09 -08:00
Eitan Seri- Levi
1d3b5776a4 Merge branch 'unstable' of https://github.com/sigp/lighthouse into gloas-payload-processing 2026-02-24 10:47:12 -08:00
Eitan Seri- Levi
8ce81578b7 introduce a smalll refactor and unit test 2026-02-24 10:46:46 -08:00
Michael Sproul
886d31fe7e Delete dysfunctional fork_revert feature (#8891)
I found myself having to update this code for Gloas, and figured we may as well delete it seeing as it doesn't work.

See:

- https://github.com/sigp/lighthouse/issues/4198


  Delete all `fork_revert` logic and the accompanying test.


Co-Authored-By: Michael Sproul <michael@sigmaprime.io>
2026-02-24 06:27:16 +00:00
Eitan Seri- Levi
d12bb4d712 Trying something out 2026-02-23 12:06:15 -08:00
Eitan Seri-Levi
dcc43e3d20 Implement gloas block gossip verification changes (#8878)
Co-Authored-By: Eitan Seri-Levi <eserilev@ucsc.edu>

Co-Authored-By: Eitan Seri- Levi <eserilev@gmail.com>

Co-Authored-By: Michael Sproul <michaelsproul@users.noreply.github.com>
2026-02-23 06:17:24 +00:00
Eitan Seri- Levi
b525fe055f Fix 2026-02-22 16:07:48 -08:00
Eitan Seri- Levi
de2362a820 Fix compilation error 2026-02-22 10:17:47 -08:00
Eitan Seri- Levi
1859bc25a4 Merge branch 'unstable' of https://github.com/sigp/lighthouse into gloas-payload-processing 2026-02-20 10:39:29 -08:00
Michael Sproul
fab77f4fc9 Skip payload_invalidation tests prior to Bellatrix (#8856)
Fix the failure of the beacon-chain tests for phase0/altair, which now only runs nightly.


  Just skip the payload invalidation tests, they don't make any sense prior to Bellatrix anyway.


Co-Authored-By: Michael Sproul <michael@sigmaprime.io>
2026-02-18 21:55:13 +00:00
Eitan Seri-Levi
1bd941e0df Merge branch 'gloas-payload-processing' into gloas-devnet-0 2026-02-17 21:27:57 -08:00
Eitan Seri-Levi
0b58cbf2d2 mark block as avail as soon as call to el succeeds 2026-02-17 21:27:44 -08:00
Eitan Seri-Levi
d88f0f7b4c resolve merge conflicts 2026-02-17 18:10:22 -08:00
Eitan Seri-Levi
81d30d576a FMT 2026-02-17 17:47:34 -08:00
Eitan Seri-Levi
64c30b84fd Merge conflicts 2026-02-17 13:18:49 -08:00
Jimmy Chen
4625cb6ab6 Gloas local block building cleanup (#8834)
Continuation of #8754, some small cleanups and address TODOs


  


Co-Authored-By: Jimmy Chen <jchen.tc@gmail.com>
2026-02-17 09:22:16 +00:00
Eitan Seri-Levi
eec0700f94 Gloas local block building MVP (#8754)
The flow for local block building is
1. Create execution payload and bid
2. Construct beacon block
3. Sign beacon block and publish
4. Sign execution payload and publish

This PR adds the beacon block v4 flow , GET payload envelope and POST payload envelope (local block building only). The spec for these endpoints can be found here:  https://github.com/ethereum/beacon-APIs/pull/552  and is subject to change.

We needed a way to store the unsigned execution payload envelope associated to the execution payload bid that was included in the block. I introduced a new cache that stores these unsigned execution payload envelopes. the GET payload envelope queries this cache directly so that a proposer, after publishing a block, can fetch the payload envelope + sign and publish it.

I kept payload signing and publishing within the validators block service to keep things simple for now. The idea was to build out a block production MVP for devnet 0, try not to affect any non gloas code paths and build things out in such a way that it will be easy to deprecate pre-gloas code paths later on (for example block production v2 and v3).

We will eventually need to track which beacon node was queried for the block so that we can later query it for the payload. But thats not needed for the devnet.


  


Co-Authored-By: Eitan Seri- Levi <eserilev@gmail.com>

Co-Authored-By: Michael Sproul <michael@sigmaprime.io>

Co-Authored-By: Jimmy Chen <jchen.tc@gmail.com>

Co-Authored-By: Eitan Seri-Levi <eserilev@ucsc.edu>
2026-02-17 02:09:35 +00:00
Eitan Seri- Levi
adea455742 Merge branch 'gloas-payload-processing' into gloas-devnet-0 2026-02-13 23:50:23 -08:00
Eitan Seri- Levi
72fe22067c Import logs 2026-02-13 23:49:59 -08:00
Eitan Seri- Levi
9f46ec6083 Merge branch 'gloas-block-and-bid-production' into gloas-devnet-0 2026-02-13 23:09:45 -08:00
Eitan Seri- Levi
75014fe3ad SseExtendPayloadAttributes hack 2026-02-13 23:09:33 -08:00
Eitan Seri- Levi
004e3b5b3b Merge branch 'gloas-block-and-bid-production' into gloas-devnet-0 2026-02-13 22:14:26 -08:00
Eitan Seri- Levi
9db9965738 Revert 2026-02-13 21:42:33 -08:00
Eitan Seri- Levi
4795e1f341 Merge branch 'unstable' of https://github.com/sigp/lighthouse into gloas-block-and-bid-production 2026-02-13 21:33:06 -08:00
Eitan Seri- Levi
9bbcfe34ac Separate payload construction for gloas 2026-02-13 21:31:55 -08:00
Eitan Seri- Levi
d140145219 Fix 2026-02-13 17:26:38 -08:00
Eitan Seri- Levi
0e377fc8ac Fix 2026-02-13 17:22:48 -08:00
Eitan Seri- Levi
1c71e1970b revert 2026-02-13 17:22:00 -08:00
Eitan Seri- Levi
5466b8a241 SSE and enw endpoint 2026-02-13 17:21:22 -08:00
Eitan Seri- Levi
e5598d529c block verification changes 2026-02-13 15:00:31 -08:00
Eitan Seri-Levi
68ad9758a3 Gloas attestation verification (#8705)
https://github.com/ethereum/consensus-specs/blob/master/specs/gloas/p2p-interface.md#attestation-subnets

Implements attestation verification logic for Gloas and adds a few gloas related tests. Note that a few of these tests rely on gloas test harness block production which hasn't been built out yet. So for now those tests are ignored.


  


Co-Authored-By: Eitan Seri- Levi <eserilev@gmail.com>

Co-Authored-By: Eitan Seri-Levi <eserilev@ucsc.edu>
2026-02-13 21:39:56 +00:00
Eitan Seri- Levi
ebaca3144c merge block production 2026-02-13 00:05:59 -08:00
Eitan Seri- Levi
dc143d9709 Hacky fork choice changes 2026-02-12 23:58:42 -08:00
Eitan Seri- Levi
7d0d438fd4 Merge branch 'unstable' of https://github.com/sigp/lighthouse into gloas-payload-processing 2026-02-12 22:40:57 -08:00
Eitan Seri- Levi
47782a68c3 delay cache, and remove some todos 2026-02-12 21:27:39 -08:00
Lion - dapplion
f4a6b8d9b9 Tree-sync friendly lookup sync tests (#8592)
- Step 0 of the tree-sync roadmap https://github.com/sigp/lighthouse/issues/7678

Current lookup sync tests are written in an explicit way that assume how the internals of lookup sync work. For example the test would do:

- Emit unknown block parent message
- Expect block request for X
- Respond with successful block request
- Expect block processing request for X
- Response with successful processing request
- etc..

This is unnecessarily verbose. And it will requires a complete re-write when something changes in the internals of lookup sync (has happened a few times, mostly for deneb and fulu).

What we really want to assert is:

- WHEN: we receive an unknown block parent message
- THEN: Lookup sync can sync that block
- ASSERT: Without penalizing peers, without unnecessary retries


  Keep all existing tests and add new cases but written in the new style described above. The logic to serve and respond to request is in this function `fn simulate` 2288a3aeb1/beacon_node/network/src/sync/tests/lookups.rs (L301)
- It controls peer behavior based on a `CompleteStrategy` where you can set for example "respond to BlocksByRoot requests with empty"
- It actually runs beacon processor messages running their clousures. Now sync tests actually import blocks, increasing the test coverage to the interaction of sync and the da_checker.
- To achieve the above the tests create real blocks with the test harness. To make the tests as fast as before, I disabled crypto with `TestConfig`

Along the way I found a couple bugs, which I documented on the diff.


Co-Authored-By: dapplion <35266934+dapplion@users.noreply.github.com>
2026-02-13 04:24:51 +00:00
Eitan Seri- Levi
5796864201 Merge branch 'unstable' of https://github.com/sigp/lighthouse into gloas-payload-processing 2026-02-12 14:18:46 -08:00
Mac L
c59e4a0cee Disable legacy-arith by default in consensus/types (#8695)
Currently, `consensus/types` cannot build with `no-default-features` since we use "legacy" standard arithmetic operations.


  - Remove the offending arithmetic to fix compilation.
- Rename `legacy-arith` to `saturating-arith` and disable it by default.


Co-Authored-By: Mac L <mjladson@pm.me>
2026-02-12 20:51:39 +00:00