Commit 11319443 authored by EvanJRichard's avatar EvanJRichard

WIP stash for discussion.

parent 79932ba5
...@@ -39,9 +39,9 @@ func TestDencunL1Fork(gt *testing.T) { ...@@ -39,9 +39,9 @@ func TestDencunL1Fork(gt *testing.T) {
miner.ActL1SetFeeRecipient(common.Address{'A', 0}) miner.ActL1SetFeeRecipient(common.Address{'A', 0})
miner.ActEmptyBlock(t) miner.ActEmptyBlock(t)
miner.ActL1SetFeeRecipient(common.Address{'A', 0}) miner.ActL1SetFeeRecipient(common.Address{'A', 0})
miner.ActEmptyBlock(t) //// test fails here miner.ActEmptyBlock(t) //// test fails here as cancun activates
/* /*
########## BAD BLOCK ######### ########## BAD BLOCK #########
Block: 2 (0xf227de28aae80d15e8a50c5639a9b31be65fdefe97e21eadd23b957bd3d6ee5a) Block: 2 (0xf227de28aae80d15e8a50c5639a9b31be65fdefe97e21eadd23b957bd3d6ee5a)
Error: header is missing beaconRoot Error: header is missing beaconRoot
Platform: geth 0.1.0-unstable go1.21.3 arm64 darwin Platform: geth 0.1.0-unstable go1.21.3 arm64 darwin
...@@ -49,9 +49,7 @@ func TestDencunL1Fork(gt *testing.T) { ...@@ -49,9 +49,7 @@ func TestDencunL1Fork(gt *testing.T) {
Receipts: Receipts:
############################## ##############################
*/ */
return
miner.ActEmptyBlock(t) miner.ActEmptyBlock(t)
return
// verify Cancun is active // verify Cancun is active
l1Head = miner.l1Chain.CurrentBlock() l1Head = miner.l1Chain.CurrentBlock()
require.True(t, sd.L1Cfg.Config.IsCancun(l1Head.Number, l1Head.Time), "Cancun active") require.True(t, sd.L1Cfg.Config.IsCancun(l1Head.Number, l1Head.Time), "Cancun active")
......
...@@ -178,22 +178,23 @@ func (payload *ExecutionPayload) CheckBlockHash() (actual common.Hash, ok bool) ...@@ -178,22 +178,23 @@ func (payload *ExecutionPayload) CheckBlockHash() (actual common.Hash, ok bool)
txHash := types.DeriveSha(rawTransactions(payload.Transactions), hasher) txHash := types.DeriveSha(rawTransactions(payload.Transactions), hasher)
header := types.Header{ header := types.Header{
ParentHash: payload.ParentHash, ParentHash: payload.ParentHash,
UncleHash: types.EmptyUncleHash, UncleHash: types.EmptyUncleHash,
Coinbase: payload.FeeRecipient, Coinbase: payload.FeeRecipient,
Root: common.Hash(payload.StateRoot), Root: common.Hash(payload.StateRoot),
TxHash: txHash, TxHash: txHash,
ReceiptHash: common.Hash(payload.ReceiptsRoot), ReceiptHash: common.Hash(payload.ReceiptsRoot),
Bloom: types.Bloom(payload.LogsBloom), Bloom: types.Bloom(payload.LogsBloom),
Difficulty: common.Big0, // zeroed, proof-of-work legacy Difficulty: common.Big0, // zeroed, proof-of-work legacy
Number: big.NewInt(int64(payload.BlockNumber)), Number: big.NewInt(int64(payload.BlockNumber)),
GasLimit: uint64(payload.GasLimit), GasLimit: uint64(payload.GasLimit),
GasUsed: uint64(payload.GasUsed), GasUsed: uint64(payload.GasUsed),
Time: uint64(payload.Timestamp), Time: uint64(payload.Timestamp),
Extra: payload.ExtraData, Extra: payload.ExtraData,
MixDigest: common.Hash(payload.PrevRandao), MixDigest: common.Hash(payload.PrevRandao),
Nonce: types.BlockNonce{}, // zeroed, proof-of-work legacy Nonce: types.BlockNonce{}, // zeroed, proof-of-work legacy
BaseFee: payload.BaseFeePerGas.ToBig(), BaseFee: payload.BaseFeePerGas.ToBig(),
ParentBeaconRoot: &common.Hash{}, // zeroed, proof-of-stake legacy(?)
} }
if payload.CanyonBlock() { if payload.CanyonBlock() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment