go-ethereum
go-ethereum copied to clipboard
all: implement EIP-6110, execution layer triggered deposits
This PR implements EIP-6110: Supply validator deposits on chain. It also sketches out the base for Prague in the engine API types. I plan to base future Prague EIP work against this PR.
We added some logics in downloader when we introduce withdrawal
, i guess it's same for deposit
?
We need to allow prague in fcuV3 as well
I like the handwritten decoder much better, I did a bunch of fuzzing of the types and nothing came up, but I haven't verified that the decoding is_actually_ correct
I think there's a missing validation in consensus.verifyHeader
fyi
prague := chain.Config().IsPrague(header.Number, header.Time)
if !prague {
if header.RequestsHash != nil {
return fmt.Errorf("invalid requestsRoot: have %d, expected nil", header.RequestsHash)
}
} else {
if header.RequestsHash == nil {
return errors.New("header is missing requestsRoot")
}
}
@islishude that occurs in state_validator.go
.
that occurs in
state_validator.go
.
it doesn't have a validation for the chain fork rule
Hi, there.
I found 2 bugs, please help review the pr #30422 and #30423