Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
123 commits
Select commit Hold shift + click to select a range
85d533b
changes on beacon state
domiwei Feb 4, 2026
164375d
fix panic
domiwei Feb 8, 2026
96312df
changes on forkchoice, persistent execution_payload_states not include
domiwei Feb 9, 2026
e0f014e
persist envelop and recover full state by it
domiwei Feb 10, 2026
67bf139
upgrade logic and mock func
domiwei Feb 10, 2026
5dc414e
fix unittest
domiwei Feb 10, 2026
04bb3b6
fix panic
domiwei Feb 10, 2026
dd9444a
lint err
domiwei Feb 11, 2026
abcb3ff
update forkchoice for spec changes
domiwei Feb 13, 2026
983b11e
changes on #4897
domiwei Feb 16, 2026
393799a
changes on data column sidecar and peerdas
domiwei Feb 19, 2026
aab8bae
new block strcut compatibility and fix OnBlock flow
domiwei Feb 20, 2026
75ffe44
remove blinded block dependency in peerdas
domiwei Feb 20, 2026
937d2a5
gossip pubsub
domiwei Feb 24, 2026
bcb417a
rpc
domiwei Feb 25, 2026
e2fb919
spectest
domiwei Feb 26, 2026
8284702
remove blinded dependency
domiwei Mar 3, 2026
4ae67e6
request execution payload in forward sync
domiwei Mar 3, 2026
fbbd3c4
update
domiwei Mar 3, 2026
595a800
update
domiwei Mar 4, 2026
35b69c6
update
domiwei Mar 4, 2026
25eb582
BackwardBeaconDownloader
domiwei Mar 4, 2026
8aa94c6
test
domiwei Mar 4, 2026
9b1e134
update
domiwei Mar 4, 2026
a285f9f
chain tip sync
domiwei Mar 6, 2026
391a602
chain tip sync
domiwei Mar 6, 2026
2d693ad
update
domiwei Mar 6, 2026
82be0d9
skills/caplin-gloas-audit
domiwei Mar 6, 2026
23c3e28
lint
domiwei Mar 6, 2026
d715e28
update
domiwei Mar 6, 2026
ef9573a
debug
domiwei Mar 6, 2026
e67ebcf
debug
domiwei Mar 9, 2026
6653050
try devnet0
domiwei Mar 9, 2026
903eb41
debug: add BlockRoot mismatch detection and GLOAS state debug logging
domiwei Mar 10, 2026
cc121d7
cl/forkchoice, cl/stages: handle MissingSegment gracefully in forward…
domiwei Mar 10, 2026
308f68d
update
domiwei Mar 12, 2026
7ed7ddb
cl/forkchoice, cl/stages: GLOAS forward sync performance and correctn…
domiwei Mar 16, 2026
71f0ef6
.claude/skills: add launch-epbs-devnet-0 skill
domiwei Mar 16, 2026
971fc19
execution: make BAL hash optional for early Amsterdam devnets
domiwei Mar 16, 2026
3cf73a2
update
domiwei Mar 18, 2026
9bc7bb0
update
domiwei Mar 18, 2026
e90bec4
config for eip7708
domiwei Mar 18, 2026
411d1d6
config for eip7778
domiwei Mar 19, 2026
67eb4ea
eip config
domiwei Mar 19, 2026
121a376
cl/state, cl/stages: fix BlockRoot() and forward sync state persisten…
domiwei Mar 19, 2026
88c4354
cl/forkchoice, cl/stages, cl/network: fix GLOAS chain stall due to mi…
domiwei Mar 21, 2026
32dd1c5
cl/checkpoint_sync, cl/forkchoice, cl/stages: GLOAS sync fixes and op…
domiwei Mar 22, 2026
ad11064
.claude/skills: add devnet management and monitoring skills
domiwei Mar 22, 2026
7623ade
cl: GLOAS spec catchup — beacon API endpoints, spec fixes, and safety…
domiwei Mar 23, 2026
f2722be
cl/forkchoice, cl/stages: defer block processing when parent envelope…
domiwei Mar 23, 2026
72053ab
cl/forkchoice: remove latestBlockHashOverride from AddChainSegment
domiwei Mar 23, 2026
90ee912
cl/stages, cl/network: fix forward sync state gap from missing envelopes
domiwei Mar 23, 2026
2dc79f6
update
domiwei Mar 26, 2026
c1d4235
cl/checkpoint_sync, cl/forkchoice, cl/stages: WIP GLOAS checkpoint sy…
domiwei Mar 30, 2026
29d906c
cl/forkchoice, cl/transition: clean up debug logs, use anchor root fo…
domiwei Mar 30, 2026
d37f579
cl/forkchoice, cl/stages: fix checkpoint sync forward stall via Store…
domiwei Mar 30, 2026
6c5d50f
cl/state, cl/transition: implement PTC window state field and epoch p…
domiwei Mar 31, 2026
1d9c72b
cl/spectest, cl/forkchoice: upgrade spectest to v1.7.0-alpha.4 and fi…
domiwei Mar 31, 2026
4db3dd0
cl/spectest: upgrade to v1.7.0-alpha.4, skip heze fork tests
domiwei Mar 31, 2026
3a32c46
cl/forkchoice: implement EIP-7732 BPS timing functions for GLOAS
domiwei Mar 31, 2026
527a82b
cl/forkchoice, cl/network, cl/clparams: spec audit fixes and minimal …
domiwei Mar 31, 2026
33c8cbd
cl/rpc, cl/network, cl/sentinel: fix forward sync stall on devnet
domiwei Mar 31, 2026
1792f10
cl/sentinel, devnet: fix error message snappy decoding and update dev…
domiwei Apr 1, 2026
eb0f24e
cl/cltypes, .claude: add GLOAS PartialDataColumn types and epbs-devne…
domiwei Apr 1, 2026
500aff7
cl/forkchoice: fix setLatestMessage ordering and PTC vote race condition
domiwei Apr 1, 2026
5d0ccde
cl/beacon, cl/services: add GLOAS SSE events and fix PayloadStatus enum
domiwei Apr 1, 2026
3907763
cl/network, cl/stages, cl/sentinel: GLOAS envelope resilience, forwar…
domiwei Apr 8, 2026
efe394c
cl/spectest: skip GLOAS proposer_boost fork choice tests (upstream te…
domiwei Apr 8, 2026
1f0dd2b
cl/execution_client, execution/engineapi: add GLOAS engine API versio…
domiwei Apr 9, 2026
9b57487
cl/beacon, cl/state: GLOAS block production fixes and builder_index b…
domiwei Apr 10, 2026
e5a4b56
cl: implement deferred payload processing (consensus-specs#5094)
domiwei Apr 17, 2026
28786ed
cl: fix GLOAS review issues — SSZ offsets, data races, gossip semanti…
domiwei Apr 18, 2026
10233eb
cl: GLOAS spec compliance fixes
domiwei Apr 19, 2026
5666622
cl/antiquary, cl/persistence: GLOAS historical state reconstruction
domiwei Apr 19, 2026
ec97324
cl/spectest: upgrade to consensus-specs v1.7.0-alpha.5 and fix GLOAS …
domiwei Apr 20, 2026
bb85cc4
cl: GLOAS audit fixes — SSZ encoding, envelope broadcast, bid selecti…
domiwei Apr 20, 2026
01b3878
cl: fix rebase artifacts — GLOAS baseOffsetSSZ, nil checks, and cleanup
domiwei Apr 21, 2026
ef1d7c9
cl, execution: fix GLOAS rebase regressions and cleanup
domiwei Apr 21, 2026
671bb33
cl/cltypes: fix BuilderPendingPayment SSZ size for static type
domiwei Apr 21, 2026
7a1139e
cl/forkchoice: gate anchor state mutation on GLOAS version
domiwei Apr 22, 2026
fde37c4
cl/cltypes: initialize Eth1Block fields in NewEth1Block to prevent ni…
domiwei Apr 22, 2026
9261b51
cl/cltypes: use lazy nil guards in ensureSSZFields instead of eager init
domiwei Apr 22, 2026
4a3fd93
cl: GLOAS spec compliance — blinded block endpoint and gossip topic s…
domiwei Apr 23, 2026
b31cc23
cl/forkchoice: guard getParentPayloadStatus at GLOAS fork boundary (#…
domiwei Apr 23, 2026
049feb9
cl/transition: simplify ApplyParentExecutionPayload signature (#5150)
domiwei Apr 23, 2026
be2cefc
cl/forkchoice, cl/beacon: fix GLOAS review items and Beacon API spec …
domiwei Apr 24, 2026
e4b4ec9
cl, engineapi: fix GLOAS fork boundary block production and GetPayloa…
domiwei Apr 25, 2026
b3032f1
cmd/caplin: pass bootnodes and static peers to CaplinConfig
domiwei Apr 25, 2026
eec0038
cl/gossip: fix race condition in fork digest resubscription
domiwei Apr 25, 2026
1475fb8
cl, kurtosis: fix GLOAS/ePBS Caplin devnet — Beacon API, spec complia…
domiwei Apr 27, 2026
839b436
cl/block_collector: adapt Flush tests to GLOAS payloadKey semantics
domiwei Apr 27, 2026
d449e61
cl, kurtosis: fix Caplin P2P for Docker/devnet environments
domiwei Apr 27, 2026
79ff23f
cl, cmd/caplin: fix Caplin minimal-preset interop and P2P peering wit…
domiwei Apr 28, 2026
9754b3b
cl: remove debug test and duplicate kurtosis config
domiwei Apr 28, 2026
c1ff7b0
cl/clparams: fix minimal preset PTC_SIZE=16 and add missing Electra/P…
domiwei Apr 28, 2026
6140249
cleanup: remove obsolete epbs-devnet configs/skills and restore asser…
domiwei Apr 28, 2026
3423370
cl, cmd/caplin, kurtosis: fix GLOAS Caplin-Lighthouse interop
domiwei Apr 28, 2026
af03534
kurtosis: add gloas-caplin-mixed suite to CI workflow
domiwei Apr 28, 2026
bb8868f
cl, common/ssz: fix GLOAS spectest regressions
domiwei Apr 28, 2026
f7012f4
cl/forkchoice: fix filter_block_tree viability check to match spec
domiwei Apr 29, 2026
09716b4
cl/stages: use HighestSeenRoot in envelope recovery to avoid costly G…
domiwei Apr 29, 2026
1ee78fa
go.mod: remove unused go-mplex dependency
domiwei Apr 29, 2026
8851a09
cl, cmd/caplin: add SubscribeAllTopics ENR option and ePBS builder de…
domiwei Apr 29, 2026
23c02ce
cl/rpc, cl/sentinel: add multistream protocol negotiation fallback
domiwei Apr 30, 2026
6fc448e
cl: align GLOAS (EIP-7732) implementation with v1.7.0-alpha.7 spec
domiwei Apr 30, 2026
f08cc53
kurtosis: upgrade lighthouse image to glamsterdam-devnet-2
domiwei May 1, 2026
c1c1819
style: fix gofmt formatting
domiwei May 1, 2026
2dcae54
cl/cltypes: version-gate LightClientHeader JSON to fix Bellatrix harn…
domiwei May 1, 2026
3cd7a35
cl/stages: fix recoverMissingEnvelopes unreachable in Engine API mode
domiwei May 1, 2026
c4f9375
cl/beacon, cl/state: fix payload attestation slot and getPTCFromWindo…
domiwei May 1, 2026
2386ebd
cl/gossip, cl/sentinel: fix gossip REJECT cascade causing network col…
domiwei May 2, 2026
6a23a5e
style: fix gofmt formatting in rate_limiter.go
domiwei May 2, 2026
f48d6bb
cl, execution: caplin GLOAS devnet-2 sync fixes and review cleanups
domiwei May 3, 2026
c2b16c9
cl: fix forward sync stability — FCU batching, reorg depth underflow,…
domiwei May 4, 2026
9025c02
cl/network: fix indentation in ForwardBeaconDownloader.RequestMore
domiwei May 4, 2026
80f5d4c
cl: downgrade verbose GLOAS log levels to reduce devnet noise
domiwei May 5, 2026
bdc8e19
cl: address review items — GPL headers, BLS error propagation, skill …
domiwei May 6, 2026
1d529ed
cl: fix review items — envelope timeout, sidecar cap, nil guard
domiwei May 6, 2026
8fa2c7c
ci: split GLOAS kurtosis suites into non-blocking standalone workflow
domiwei May 7, 2026
af8517a
cl: enable GLOAS spectests, fix BuilderIndexFlag comment
domiwei May 7, 2026
f755f88
cl/spectest: upgrade consensus-spec-tests to v1.7.0-alpha.7
domiwei May 7, 2026
763e326
cl: fix GLOAS checkpoint sync, envelope reliability, and anchor state…
domiwei May 11, 2026
16f7279
cl/forkchoice: close BLS signature bypass on gossip-received self-bui…
domiwei May 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .claude/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,10 @@
"Bash(git lfs ls-files:*)",
"Bash(grep:*)",
"Bash(git add:*)",
"WebFetch(domain:pypi.org)"
"WebFetch(domain:pypi.org)",
"Bash(CGO_CFLAGS=-D__BLST_PORTABLE__ go test:*)",
"Bash(find:*)",
"Bash(gh pr:*)"
]
}
}
26 changes: 26 additions & 0 deletions .github/workflows/kurtosis/glamsterdam-caplin.io
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
participants:
- cl_type: caplin
cl_image: test/erigon:glamsterdam-caplin
cl_log_level: "debug"
el_type: erigon
el_image: test/erigon:glamsterdam-caplin
el_log_level: "debug"
el_extra_params: ["--experimental.bal"]
use_separate_vc: true
vc_type: lighthouse
vc_image: ethpandaops/lighthouse:glamsterdam-devnet-0
count: 1
global_log_level: 'debug'
network_params:
preset: minimal
seconds_per_slot: 6
genesis_delay: 20
fulu_fork_epoch: 0
gloas_fork_epoch: 1
ethereum_genesis_generator_params:
image: ethpandaops/ethereum-genesis-generator:5.3.5
additional_services: [assertoor]
assertoor_params:
image: ethpandaops/assertoor:master
run_stability_check: false
run_block_proposal_check: true
35 changes: 35 additions & 0 deletions .github/workflows/kurtosis/gloas-caplin-mixed.io
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
participants:
- cl_type: lighthouse
cl_image: ethpandaops/lighthouse:glamsterdam-devnet-2
el_type: erigon
el_image: test/erigon:current
el_log_level: "debug"
el_extra_params: ["--experimental.bal"]
supernode: true
count: 2
- cl_type: caplin
cl_image: test/erigon:current
cl_log_level: "debug"
cl_extra_params: ["--local-discovery", "--caplin.subscribe-all-topics"]
el_type: erigon
el_image: test/erigon:current
el_log_level: "debug"
el_extra_params: ["--experimental.bal"]
use_separate_vc: true
vc_type: lighthouse
vc_image: ethpandaops/lighthouse:glamsterdam-devnet-2
count: 1
global_log_level: 'debug'
network_params:
preset: minimal
seconds_per_slot: 6
genesis_delay: 20
fulu_fork_epoch: 0
gloas_fork_epoch: 1
ethereum_genesis_generator_params:
image: ethpandaops/ethereum-genesis-generator:5.3.5
additional_services: [assertoor]
assertoor_params:
run_stability_check: false
run_block_proposal_check: true
image: ethpandaops/assertoor:master
45 changes: 45 additions & 0 deletions .github/workflows/kurtosis/gloas-three-cl-mixed.io
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
participants:
- cl_type: lighthouse
cl_image: ethpandaops/lighthouse:glamsterdam-devnet-2
el_type: erigon
el_image: test/erigon:current
el_log_level: "debug"
el_extra_params: ["--experimental.bal"]
supernode: true
count: 1
- cl_type: prysm
cl_image: ethpandaops/prysm-beacon-chain:glamsterdam-devnet-2-minimal
el_type: erigon
el_image: test/erigon:current
el_log_level: "debug"
el_extra_params: ["--experimental.bal"]
use_separate_vc: true
vc_type: prysm
vc_image: ethpandaops/prysm-validator:glamsterdam-devnet-2-minimal
count: 1
- cl_type: caplin
cl_image: test/erigon:current
cl_log_level: "debug"
cl_extra_params: ["--local-discovery", "--caplin.subscribe-all-topics"]
el_type: erigon
el_image: test/erigon:current
el_log_level: "debug"
el_extra_params: ["--experimental.bal"]
use_separate_vc: true
vc_type: lighthouse
vc_image: ethpandaops/lighthouse:glamsterdam-devnet-2
count: 1
global_log_level: 'debug'
network_params:
preset: minimal
seconds_per_slot: 6
genesis_delay: 20
fulu_fork_epoch: 0
gloas_fork_epoch: 1
ethereum_genesis_generator_params:
image: ethpandaops/ethereum-genesis-generator:5.3.5
additional_services: [assertoor]
assertoor_params:
run_stability_check: false
run_block_proposal_check: true
image: ethpandaops/assertoor:master
130 changes: 130 additions & 0 deletions .github/workflows/test-kurtosis-gloas.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
name: Kurtosis GLOAS Tests

env:
DOCKERHUB_REPOSITORY: "erigontech/erigon"
APP_REPO: "erigontech/erigon"
LIGHTHOUSE_IMAGE: "sigp/lighthouse:v7.0.1"
ASSERTOOR_IMAGE: "ethpandaops/assertoor:v0.0.17"

on:
pull_request:
branches:
- main
- 'release/**'
types:
- opened
- reopened
- synchronize
- ready_for_review
workflow_dispatch:

concurrency:
group: >-
${{
github.event_name == 'pull_request' &&
format('{0}-{1}', github.workflow, github.head_ref) ||
format('{0}-{1}', github.workflow, github.run_id)
}}
cancel-in-progress: true

permissions:
contents: read

jobs:
gloas_test:
name: gloas_${{ matrix.suite }}_test
if: ${{ !github.event.pull_request.draft }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- suite: gloas-caplin-mixed
package_args: .github/workflows/kurtosis/gloas-caplin-mixed.io
ethereum_package_branch: "6.1.0"
test_timeout_minutes: 20
- suite: gloas-three-cl-mixed
package_args: .github/workflows/kurtosis/gloas-three-cl-mixed.io
ethereum_package_branch: "6.1.0"
test_timeout_minutes: 20

steps:
- name: Fast checkout git repository
uses: actions/checkout@v6

- name: Conditional Docker Login
if: |
github.repository == 'erigontech/erigon' &&
github.actor != 'dependabot[bot]' &&
!github.event.pull_request.head.repo.fork
continue-on-error: true
uses: docker/login-action@v4
with:
username: ${{ secrets.ORG_DOCKERHUB_ERIGONTECH_USERNAME }}
password: ${{ secrets.ORG_DOCKERHUB_ERIGONTECH_TOKEN }}

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Restore cached third-party containers
id: cache-cl-images
uses: actions/cache@v5
with:
path: /tmp/docker-cache
key: docker-cl-${{ env.LIGHTHOUSE_IMAGE }}-${{ env.ASSERTOOR_IMAGE }}

- name: Load cached containers into daemon
if: steps.cache-cl-images.outputs.cache-hit == 'true'
run: |
docker load -i /tmp/docker-cache/lighthouse.tar
docker load -i /tmp/docker-cache/assertoor.tar

- name: Pull third-party containers and save to cache
if: steps.cache-cl-images.outputs.cache-hit != 'true'
run: |
mkdir -p /tmp/docker-cache
docker pull ${{ env.LIGHTHOUSE_IMAGE }}
docker pull ${{ env.ASSERTOOR_IMAGE }}
docker save ${{ env.LIGHTHOUSE_IMAGE }} -o /tmp/docker-cache/lighthouse.tar
docker save ${{ env.ASSERTOOR_IMAGE }} -o /tmp/docker-cache/assertoor.tar

- name: Build erigon Docker image (with BuildKit layer cache)
uses: docker/build-push-action@v6
with:
context: .
load: true
tags: test/erigon:current
build-args: |
BINARIES=erigon caplin
cache-from: type=gha,scope=kurtosis-erigon-build
cache-to: type=gha,mode=max,scope=kurtosis-erigon-build

- name: Run ${{ matrix.suite }} Kurtosis + assertoor tests
timeout-minutes: ${{ matrix.test_timeout_minutes }}
uses: ethpandaops/kurtosis-assertoor-github-action@v1
with:
enclave_name: "kurtosis-${{ matrix.suite }}-${{ github.run_id }}"
ethereum_package_url: "github.com/ethpandaops/ethereum-package"
ethereum_package_args: "${{ matrix.package_args }}"
ethereum_package_branch: "${{ matrix.ethereum_package_branch }}"
kurtosis_extra_args: --verbosity detailed --cli-log-level trace
persistent_logs: "true"

- name: Dump Kurtosis enclave on failure
if: failure()
continue-on-error: true
run: |
set -eu
enclave_name="kurtosis-${{ matrix.suite }}-${{ github.run_id }}"
dump_dir="${RUNNER_TEMP}/kurtosis-dump-${{ matrix.suite }}"
kurtosis enclave dump "$enclave_name" "$dump_dir" || true

- name: Upload Kurtosis enclave dump
if: failure()
continue-on-error: true
uses: actions/upload-artifact@v7
with:
name: kurtosis-dump-${{ matrix.suite }}-${{ github.run_id }}
path: ${{ runner.temp }}/kurtosis-dump-${{ matrix.suite }}
retention-days: 7
if-no-files-found: warn
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ mdbx.lck

.claude/projects/
*/**/*.local.json
.claude/skills/

# Prevent accidental commit of locally-built binaries
/erigon
Expand Down
2 changes: 0 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -250,9 +250,7 @@ test-fixtures-cl:
rm -rf test-fixtures-cache/cl_mainnet/tests/mainnet/eip6110
rm -rf test-fixtures-cache/cl_mainnet/tests/mainnet/whisk
rm -rf test-fixtures-cache/cl_mainnet/tests/mainnet/eip7441
rm -rf test-fixtures-cache/cl_mainnet/tests/mainnet/eip7732
rm -rf test-fixtures-cache/cl_mainnet/tests/mainnet/eip7805
rm -rf test-fixtures-cache/cl_mainnet/tests/mainnet/gloas

## test-fixtures-eest: download & extract only the EEST tarballs (eest_stable, eest_devnet, eest_benchmark)
.PHONY: test-fixtures-eest
Expand Down
24 changes: 24 additions & 0 deletions cl/abstract/beacon_state.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,13 @@ type BeaconStateUpgradable interface {
UpgradeToDeneb() error
UpgradeToElectra() error
UpgradeToFulu() error
UpgradeToGloas() error
}

type BeaconStateExtension interface {
SlashValidator(slashedInd uint64, whistleblowerInd *uint64) (uint64, error)
InitiateValidatorExit(index uint64) error
InitiateBuilderExit(builderIndex uint64)
GetActiveValidatorsIndices(epoch uint64) (indicies []uint64)
GetTotalActiveBalance() uint64
ComputeCommittee(indicies []uint64, slot uint64, index, count uint64) ([]uint64, error)
Expand Down Expand Up @@ -70,6 +72,18 @@ type BeaconStateExtension interface {
ComputeExitEpochAndUpdateChurn(exitBalance uint64) uint64
GetConsolidationBalanceToConsume() uint64
GetProposerLookahead() solid.Uint64VectorSSZ
GetBuilders() *solid.ListSSZ[*cltypes.Builder]
GetLatestExecutionPayloadBid() *cltypes.ExecutionPayloadBid
GetLatestBlockHash() common.Hash
GetBuilderPendingWithdrawals() *solid.ListSSZ[*cltypes.BuilderPendingWithdrawal]
GetBuilderPendingPayments() *solid.VectorSSZ[*cltypes.BuilderPendingPayment]
GetBuilderPaymentQuorumThreshold() uint64
GetNextWithdrawalBuilderIndex() uint64
GetPayloadExpectedWithdrawals() *solid.ListSSZ[*cltypes.Withdrawal]
GetIndexedPayloadAttestation(payloadAttestation *cltypes.PayloadAttestation) (*cltypes.IndexedPayloadAttestation, error)
GetPtcWindow() *solid.VectorSSZ[solid.Uint64VectorSSZ]
GetPTC(slot uint64) ([]uint64, error)
ComputePTC(slot uint64) ([]uint64, error)
}

type BeaconStateBasic interface {
Expand All @@ -88,6 +102,7 @@ type BeaconStateSSZ interface {
DecodeSSZ(buf []byte, version int) error
EncodingSizeSSZ() (size int)
HashSSZ() (out [32]byte, err error)
PrintLeaves()
}

//go:generate mockgen -typed=true -destination=./mock_services/beacon_state_mutator_mock.go -package=mock_services . BeaconStateMutator
Expand Down Expand Up @@ -143,6 +158,15 @@ type BeaconStateMutator interface {
SetConsolidationBalanceToConsume(uint64)
SetEarlistConsolidationEpoch(uint64)
SetProposerLookahead(proposerLookahead solid.Uint64VectorSSZ)
SetExecutionPayloadAvailability(slot uint64, available bool)
SetBuilderPendingPayments(*solid.VectorSSZ[*cltypes.BuilderPendingPayment])
SetBuilderPendingWithdrawals(withdrawals *solid.ListSSZ[*cltypes.BuilderPendingWithdrawal])
SetPayloadExpectedWithdrawals(withdrawals *solid.ListSSZ[*cltypes.Withdrawal])
SetLatestBlockHash(hash common.Hash)
SetNextWithdrawalBuilderIndex(index uint64)
SetBuilders(builders *solid.ListSSZ[*cltypes.Builder])
SetLatestExecutionPayloadBid(bid *cltypes.ExecutionPayloadBid)
SetPtcWindow(ptcWindow *solid.VectorSSZ[solid.Uint64VectorSSZ])

AddEth1DataVote(vote *cltypes.Eth1Data)
AddValidator(validator solid.Validator, balance uint64)
Expand Down
Loading
Loading