-
Notifications
You must be signed in to change notification settings - Fork 461
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unify Engine API failure responses #5154
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we should do class hierarchy for ExecutionPayload
?
Or at least a clear way of validating them, for example, extension methods like: IsValidV1
, IsValidV2
or GetVersion
.
That was exactly the way I went initially but it turned out to be a longer and more complicated approach. Class hierarchy won't work in this case either. The only way to distinguish versions, for now, is to check whether the Also, because this check is an input parameter validation, I'd like to have it before any other checks for FCU as well. However, the timestamp and block number logic are a bit complicated there, so I left it there. Things may change with future version checks though. |
My whole point is on semantics and readability lets name it V1/V2 and make validation based on that. Will be easier to read and translate from specs, let me try to provide example |
If we go with versions, then we will have |
created versioning PR: #5157 |
#5157) * Simple versioning and simplified transparent message version validation * remove redundant code * fix * fix v2 * fix searching for ReleaseSpec, prioritizing TImeStamp if not null * More refactors * revert change in ForkInfo * revert changes * fix * Refactor * Add comment
18abe19
to
f2b5bae
Compare
Changes
Implemented ethereum/execution-apis#337 that unifies Engine API failure responses.
Types of changes
What types of changes does your code introduce?
Testing
Requires testing
If yes, did you write tests?
Notes on testing
Withdrawals Hive tests passing.