-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Spec test: capella and update to v1.3.0-alpha.1
#11683
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.
Tests fail
WithdrawalQueueLimit = 1099511627776 // WithdrawalQueueLimit defines the maximum number of withdrawals queued in the state. | ||
ExecutionAddressLength = 20 // ExecutionAddressLength defines the length of an execution layer address. |
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.
Why are these deleted?
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.
They are not used, and they will never be used, so removed unused variables
MaxWithdrawalsPerPayload = 16 // MaxWithdrawalsPerPayloadLength defines the maximum number of withdrawals that can be included in a payload. | ||
WithdrawalQueueLimit = 1099511627776 // WithdrawalQueueLimit defines the maximum number of withdrawals queued in the state. | ||
MaxWithdrawalsPerPayload = 4 // MaxWithdrawalsPerPayloadLength defines the maximum number of withdrawals that can be included in a payload. |
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.
Same here, why these changes to presents?
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.
The correct value for MaxWithdrawalsPerPayload
is 4
This has to be fixed or else the minimal spec test will fail
"slashings_reset_test.go", | ||
"slashings_test.go", | ||
], | ||
data = glob(["*.yaml"]) + [ |
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.
data = glob(["*.yaml"]) + [ | |
data = [ |
There are no yaml files here that would match that glob.
size = "medium", | ||
timeout = "short", | ||
srcs = ["finality_test.go"], | ||
data = glob(["*.yaml"]) + [ |
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.
data = glob(["*.yaml"]) + [ | |
data = [ |
Same here, there are no local yaml files that would match this glob
data = glob(["*.yaml"]) + [ | ||
"@consensus_spec_tests_mainnet//:test_data", | ||
], | ||
shard_count = 4, |
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.
is this shard count appropriate? This looks like 1 test only.
shard_count = 4, | |
shard_count = 1, |
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.
+1 here, we're using 1 on devnets but I wasn't aware it was 1 for mainnet
size = "enormous", | ||
timeout = "short", | ||
srcs = ["forkchoice_test.go"], | ||
data = glob(["*.yaml"]) + [ |
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.
data = glob(["*.yaml"]) + [ | |
data = [ |
"voluntary_exit_test.go", | ||
"withdrawals_test.go", | ||
], | ||
data = glob(["*.yaml"]) + [ |
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.
data = glob(["*.yaml"]) + [ | |
data = [ |
name = "go_default_test", | ||
size = "small", | ||
srcs = ["rewards_test.go"], | ||
data = glob(["*.yaml"]) + [ |
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.
data = glob(["*.yaml"]) + [ | |
data = [ |
"blocks_test.go", | ||
"slots_test.go", | ||
], | ||
data = glob(["*.yaml"]) + [ |
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.
data = glob(["*.yaml"]) + [ | |
data = [ |
name = "go_default_test", | ||
size = "small", | ||
srcs = ["ssz_static_test.go"], | ||
data = glob(["*.yaml"]) + [ |
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.
data = glob(["*.yaml"]) + [ | |
data = [ |
_, ok := data.Proto().(*enginev1.ExecutionPayloadCapella) | ||
if ok { | ||
return false, nil | ||
} |
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.
This was a bad check. data
is an interface, and the underlying object could be bellatrix or capella
require.NoError(t, err) | ||
require.Equal(t, true, got) | ||
require.Equal(t, false, got) |
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.
Why is a Capella block not an execution block?
got, err := blocks.IsExecutionEnabled(st, body) | ||
require.NoError(t, err) | ||
require.Equal(t, true, got) | ||
require.Equal(t, false, got) |
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.
Same here, why wouldn't this be enabled in capella?
This PR adds Capella spec tests and updates spec tests to the latest alpha release
Pre-req to merging this PR:
ProcessBLSToExecutionChanges
changes inbeacon-chain/core/blocks/withdrawals.go
beacon-chain/core/transition/transition_no_verify_sig.go
beacon-chain/state