Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ require (
github.com/ethpandaops/eth-das-guardian v0.1.0
github.com/ethpandaops/ethcore v0.0.0-20260320045412-9cdd5d70a29c
github.com/ethpandaops/ethwallclock v0.4.0
github.com/ethpandaops/go-eth2-client v0.0.1
github.com/ethpandaops/go-eth2-client v0.0.2-0.20260420095341-76d6596ff4bc
github.com/glebarez/go-sqlite v1.22.0
github.com/go-redis/redis/v8 v8.11.5
github.com/golang-jwt/jwt/v5 v5.3.1
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -120,8 +120,8 @@ github.com/ethpandaops/ethcore v0.0.0-20260320045412-9cdd5d70a29c h1:uBRIitwcuCJ
github.com/ethpandaops/ethcore v0.0.0-20260320045412-9cdd5d70a29c/go.mod h1:QsmYTdesob+vQ6pW4KtRVvxLZUNop3cdtd/DgD30hJU=
github.com/ethpandaops/ethwallclock v0.4.0 h1:+sgnhf4pk6hLPukP076VxkiLloE4L0Yk1yat+ZyHh1g=
github.com/ethpandaops/ethwallclock v0.4.0/go.mod h1:y0Cu+mhGLlem19vnAV2x0hpFS5KZ7oOi2SWYayv9l24=
github.com/ethpandaops/go-eth2-client v0.0.1 h1:Xifvb7RF24tguA6HxEaE2vIN1BsY44SOSH/B+CBSFPk=
github.com/ethpandaops/go-eth2-client v0.0.1/go.mod h1:9BBd/XIw1egZTkxtFGMvgXnsxX6ypKHKNKD7itqjmNQ=
github.com/ethpandaops/go-eth2-client v0.0.2-0.20260420095341-76d6596ff4bc h1:Kxvw0SR67oZ3hz70tXIYGrtXcid+r3xoNYlCX13ZOdo=
github.com/ethpandaops/go-eth2-client v0.0.2-0.20260420095341-76d6596ff4bc/go.mod h1:9BBd/XIw1egZTkxtFGMvgXnsxX6ypKHKNKD7itqjmNQ=
github.com/ferranbt/fastssz v1.0.0 h1:9EXXYsracSqQRBQiHeaVsG/KQeYblPf40hsQPb9Dzk8=
github.com/ferranbt/fastssz v1.0.0/go.mod h1:Ea3+oeoRGGLGm5shYAeDgu6PGUlcvQhE2fILyD9+tGg=
github.com/filecoin-project/go-clock v0.1.0 h1:SFbYIM75M8NnFm1yMHhN9Ahy3W5bEZV9gd6MPfXbKVU=
Expand Down
11 changes: 9 additions & 2 deletions indexer/beacon/epochstate.go
Original file line number Diff line number Diff line change
Expand Up @@ -486,8 +486,15 @@ func (s *epochState) tryReplayFromParentState(
client.logger.Warnf("replay: ApplyExecutionPayload failed at slot %v: %v", blk.Slot, err)
return nil
}
// Post-payload state HTR is recorded in the envelope itself.
prevStateRoot = payload.Message.StateRoot
// Post-payload state HTR: compute from the applied state.
// v1.7.0-alpha.5 removed state_root from ExecutionPayloadEnvelope,
// so we derive it locally instead of reading it off the envelope.
postPayloadRoot, htrErr := parentState.Gloas.HashTreeRoot()
if htrErr != nil {
client.logger.Warnf("replay: post-payload HTR failed at slot %v: %v", blk.Slot, htrErr)
return nil
}
prevStateRoot = postPayloadRoot
}
// else: payload was orphaned (next block built on parent payload).
// Leave state unchanged; gotStateRoot is the correct hint.
Expand Down