mirror of
https://github.com/status-im/nimbus-eth2.git
synced 2025-02-22 19:28:20 +00:00
rm unused ProduceBlockResponseV2 type (#6302)
This commit is contained in:
parent
dd452f71d3
commit
3e6990ccc4
@ -403,8 +403,7 @@ type
|
||||
RestNimbusTimestamp2 |
|
||||
GetGraffitiResponse
|
||||
|
||||
DecodeConsensysTypes* =
|
||||
ProduceBlockResponseV2 | ProduceBlindedBlockResponse
|
||||
DecodeConsensysTypes* = ProduceBlindedBlockResponse
|
||||
|
||||
RestVersioned*[T] = object
|
||||
data*: T
|
||||
@ -1423,8 +1422,7 @@ template prepareForkedBlockReading(blockType: typedesc,
|
||||
if version.isNone():
|
||||
reader.raiseUnexpectedValue("Incorrect version field value")
|
||||
of "data":
|
||||
when (blockType is ProduceBlockResponseV2) or
|
||||
(blockType is ForkedBlindedBeaconBlock) or
|
||||
when (blockType is ForkedBlindedBeaconBlock) or
|
||||
(blockType is ProduceBlockResponseV3):
|
||||
if data.isSome():
|
||||
reader.raiseUnexpectedField(
|
||||
@ -1472,92 +1470,6 @@ template prepareForkedBlockReading(blockType: typedesc,
|
||||
if data.isNone():
|
||||
reader.raiseUnexpectedValue("Field `data` is missing")
|
||||
|
||||
proc readValue*[BlockType: ProduceBlockResponseV2](
|
||||
reader: var JsonReader[RestJson],
|
||||
value: var BlockType) {.raises: [IOError, SerializationError].} =
|
||||
var
|
||||
version: Opt[ConsensusFork]
|
||||
data: Opt[JsonString]
|
||||
blinded: Opt[bool]
|
||||
payloadValue: Opt[Uint256]
|
||||
blockValue: Opt[Uint256]
|
||||
|
||||
prepareForkedBlockReading(BlockType, reader, version, data, blinded,
|
||||
payloadValue, blockValue)
|
||||
|
||||
case version.get():
|
||||
of ConsensusFork.Phase0:
|
||||
let res =
|
||||
try:
|
||||
RestJson.decode(string(data.get()),
|
||||
phase0.BeaconBlock,
|
||||
requireAllFields = true,
|
||||
allowUnknownFields = true)
|
||||
except SerializationError:
|
||||
reader.raiseUnexpectedValue("Incorrect phase0 block format")
|
||||
value = ProduceBlockResponseV2(kind: ConsensusFork.Phase0,
|
||||
phase0Data: res)
|
||||
of ConsensusFork.Altair:
|
||||
let res =
|
||||
try:
|
||||
RestJson.decode(string(data.get()),
|
||||
altair.BeaconBlock,
|
||||
requireAllFields = true,
|
||||
allowUnknownFields = true)
|
||||
except SerializationError:
|
||||
reader.raiseUnexpectedValue("Incorrect altair block format")
|
||||
|
||||
value = ProduceBlockResponseV2(kind: ConsensusFork.Altair,
|
||||
altairData: res)
|
||||
of ConsensusFork.Bellatrix:
|
||||
let res =
|
||||
try:
|
||||
RestJson.decode(string(data.get()),
|
||||
bellatrix.BeaconBlock,
|
||||
requireAllFields = true,
|
||||
allowUnknownFields = true)
|
||||
except SerializationError:
|
||||
reader.raiseUnexpectedValue("Incorrect bellatrix block format")
|
||||
|
||||
value = ProduceBlockResponseV2(kind: ConsensusFork.Bellatrix,
|
||||
bellatrixData: res)
|
||||
of ConsensusFork.Capella:
|
||||
let res =
|
||||
try:
|
||||
RestJson.decode(string(data.get()),
|
||||
capella.BeaconBlock,
|
||||
requireAllFields = true,
|
||||
allowUnknownFields = true)
|
||||
except SerializationError:
|
||||
reader.raiseUnexpectedValue("Incorrect capella block format")
|
||||
|
||||
value = ProduceBlockResponseV2(kind: ConsensusFork.Capella,
|
||||
capellaData: res)
|
||||
of ConsensusFork.Deneb:
|
||||
let res =
|
||||
try:
|
||||
RestJson.decode(string(data.get()),
|
||||
deneb.BlockContents,
|
||||
requireAllFields = true,
|
||||
allowUnknownFields = true)
|
||||
except SerializationError:
|
||||
reader.raiseUnexpectedValue("Incorrect deneb block format")
|
||||
|
||||
value = ProduceBlockResponseV2(kind: ConsensusFork.Deneb,
|
||||
denebData: res)
|
||||
of ConsensusFork.Electra:
|
||||
let res =
|
||||
try:
|
||||
RestJson.decode(string(data.get()),
|
||||
electra.BlockContents,
|
||||
requireAllFields = true,
|
||||
allowUnknownFields = true)
|
||||
except SerializationError:
|
||||
reader.raiseUnexpectedValue("Incorrect electra block format")
|
||||
|
||||
value = ProduceBlockResponseV2(kind: ConsensusFork.Electra,
|
||||
electraData: res)
|
||||
|
||||
proc readValue*[BlockType: ForkedBlindedBeaconBlock](
|
||||
reader: var JsonReader[RestJson],
|
||||
value: var BlockType
|
||||
@ -3846,35 +3758,7 @@ proc decodeBytes*[T: DecodeConsensysTypes](
|
||||
data = string.fromBytes(value)
|
||||
return err("Serialization error")
|
||||
elif mediaType == OctetStreamMediaType:
|
||||
when t is ProduceBlockResponseV2:
|
||||
let fork = ConsensusFork.decodeString(consensusVersion).valueOr:
|
||||
return err("Invalid or Unsupported consensus version")
|
||||
case fork
|
||||
of ConsensusFork.Electra:
|
||||
let blckContents = ? readSszResBytes(electra.BlockContents, value)
|
||||
ok(ProduceBlockResponseV2(kind: ConsensusFork.Electra,
|
||||
electraData: blckContents))
|
||||
of ConsensusFork.Deneb:
|
||||
let blckContents = ? readSszResBytes(deneb.BlockContents, value)
|
||||
ok(ProduceBlockResponseV2(kind: ConsensusFork.Deneb,
|
||||
denebData: blckContents))
|
||||
of ConsensusFork.Capella:
|
||||
let blck = ? readSszResBytes(capella.BeaconBlock, value)
|
||||
ok(ProduceBlockResponseV2(kind: ConsensusFork.Capella,
|
||||
capellaData: blck))
|
||||
of ConsensusFork.Bellatrix:
|
||||
let blck = ? readSszResBytes(bellatrix.BeaconBlock, value)
|
||||
ok(ProduceBlockResponseV2(kind: ConsensusFork.Bellatrix,
|
||||
bellatrixData: blck))
|
||||
of ConsensusFork.Altair:
|
||||
let blck = ? readSszResBytes(altair.BeaconBlock, value)
|
||||
ok(ProduceBlockResponseV2(kind: ConsensusFork.Altair,
|
||||
altairData: blck))
|
||||
of ConsensusFork.Phase0:
|
||||
let blck = ? readSszResBytes(phase0.BeaconBlock, value)
|
||||
ok(ProduceBlockResponseV2(kind: ConsensusFork.Phase0,
|
||||
phase0Data: blck))
|
||||
elif t is ProduceBlindedBlockResponse:
|
||||
when t is ProduceBlindedBlockResponse:
|
||||
let fork = ConsensusFork.decodeString(consensusVersion).valueOr:
|
||||
return err("Invalid or Unsupported consensus version")
|
||||
case fork
|
||||
|
@ -357,15 +357,6 @@ type
|
||||
of ConsensusFork.Deneb: denebBody*: deneb.BeaconBlockBody
|
||||
of ConsensusFork.Electra: electraBody*: electra.BeaconBlockBody
|
||||
|
||||
ProduceBlockResponseV2* = object
|
||||
case kind*: ConsensusFork
|
||||
of ConsensusFork.Phase0: phase0Data*: phase0.BeaconBlock
|
||||
of ConsensusFork.Altair: altairData*: altair.BeaconBlock
|
||||
of ConsensusFork.Bellatrix: bellatrixData*: bellatrix.BeaconBlock
|
||||
of ConsensusFork.Capella: capellaData*: capella.BeaconBlock
|
||||
of ConsensusFork.Deneb: denebData*: deneb.BlockContents
|
||||
of ConsensusFork.Electra: electraData*: electra.BlockContents
|
||||
|
||||
ProduceBlockResponseV3* = ForkedMaybeBlindedBeaconBlock
|
||||
|
||||
VCRuntimeConfig* = Table[string, string]
|
||||
@ -1058,27 +1049,3 @@ func toValidatorIndex*(value: RestValidatorIndex): Result[ValidatorIndex,
|
||||
err(ValidatorIndexError.TooHighValue)
|
||||
else:
|
||||
doAssert(false, "ValidatorIndex type size is incorrect")
|
||||
|
||||
template withBlck*(x: ProduceBlockResponseV2,
|
||||
body: untyped): untyped =
|
||||
case x.kind
|
||||
of ConsensusFork.Phase0:
|
||||
const consensusFork {.inject, used.} = ConsensusFork.Phase0
|
||||
template blck: untyped {.inject.} = x.phase0Data
|
||||
body
|
||||
of ConsensusFork.Altair:
|
||||
const consensusFork {.inject, used.} = ConsensusFork.Altair
|
||||
template blck: untyped {.inject.} = x.altairData
|
||||
body
|
||||
of ConsensusFork.Bellatrix:
|
||||
const consensusFork {.inject, used.} = ConsensusFork.Bellatrix
|
||||
template blck: untyped {.inject.} = x.bellatrixData
|
||||
body
|
||||
of ConsensusFork.Capella:
|
||||
const consensusFork {.inject, used.} = ConsensusFork.Capella
|
||||
template blck: untyped {.inject.} = x.capellaData
|
||||
body
|
||||
of ConsensusFork.Deneb:
|
||||
const consensusFork {.inject, used.} = ConsensusFork.Deneb
|
||||
template blck: untyped {.inject.} = x.denebData.blck
|
||||
body
|
||||
|
@ -6,10 +6,10 @@
|
||||
# at your option. This file may not be copied, modified, or distributed except according to those terms.
|
||||
|
||||
{.push raises: [].}
|
||||
{.used.}
|
||||
|
||||
import
|
||||
std/algorithm,
|
||||
unittest2, chronicles, stew/[results, byteutils, io2],
|
||||
unittest2, chronicles, results, stew/[byteutils, io2],
|
||||
chronos/asyncproc,
|
||||
chronos/unittest2/asynctests,
|
||||
../beacon_chain/spec/[signatures, crypto],
|
||||
@ -19,8 +19,6 @@ import
|
||||
|
||||
from std/os import getEnv, osErrorMsg
|
||||
|
||||
{.used.}
|
||||
|
||||
const
|
||||
TestDirectoryName = "test-signing-node"
|
||||
TestDirectoryNameVerifyingWeb3Signer = "test-signing-node-verifying-web3signer"
|
||||
@ -63,8 +61,8 @@ const
|
||||
|
||||
AgAttestation = "{\"data\":{\"aggregation_bits\":\"0x01\",\"signature\":\"0x1b66ac1fb663c9bc59509846d6ec05345bd908eda73e670af888da41af171505cc411d61252fb6cb3fa0017b679f8bb2305b26a285fa2737f175668d0dff91cc1b66ac1fb663c9bc59509846d6ec05345bd908eda73e670af888da41af171505\",\"data\":{\"slot\":\"1\",\"index\":\"1\",\"beacon_block_root\":\"0xcf8e0d4e9587369b2301d0790347320302cc0943d5a1884560367e8208d920f2\",\"source\":{\"epoch\":\"1\",\"root\":\"0xcf8e0d4e9587369b2301d0790347320302cc0943d5a1884560367e8208d920f2\"},\"target\":{\"epoch\":\"1\",\"root\":\"0xcf8e0d4e9587369b2301d0790347320302cc0943d5a1884560367e8208d920f2\"}}}}"
|
||||
|
||||
CapellaBlock = "{\"version\":\"capella\",\"data\":{\"slot\":\"5297696\",\"proposer_index\":\"153094\",\"parent_root\":\"0xe6106533af9be918120ead7440a8006c7f123cc3cb7daf1f11d951864abea014\",\"state_root\":\"0xf86196d34500ca25d1f4e7431d4d52f6f85540bcaf97dd0d2ad9ecdb3eebcdf0\",\"body\":{\"randao_reveal\":\"0xa7efee3d5ddceb60810b23e3b5d39734696418f41dfd13a0851c7be7a72acbdceaa61e1db27513801917d72519d1c1040ccfed829faf06abe06d9964949554bf4369134b66de715ea49eb4fecf3e2b7e646f1764a1993e31e53dbc6557929c12\",\"eth1_data\":{\"deposit_root\":\"0x8ec87d7219a3c873fff3bfe206b4f923d1b471ce4ff9d6d6ecc162ef07825e14\",\"deposit_count\":\"259476\",\"block_hash\":\"0x877b6f8332c7397251ff3f0c5cecec105ff7d4cb78251b47f91fd15a86a565ab\"},\"graffiti\":\"\",\"proposer_slashings\":[],\"attester_slashings\":[],\"attestations\":[],\"deposits\":[],\"voluntary_exits\":[],\"sync_aggregate\":{\"sync_committee_bits\":\"0x733dfda7f5ffde5ade73367fcbf7fffeef7fe43777ffdffab9dbad6f7eed5fff9bfec4affdefbfaddf35bf5efbff9ffff9dfd7dbf97fbfcdfaddfeffbf95f75f\",\"sync_committee_signature\":\"0x81fdf76e797f81b0116a1c1ae5200b613c8041115223cd89e8bd5477aab13de6097a9ebf42b130c59527bbb4c96811b809353a17c717549f82d4bd336068ef0b99b1feebd4d2432a69fa77fac12b78f1fcc9d7b59edbeb381adf10b15bc4a520\"},\"execution_payload\":{\"parent_hash\":\"0x14c2242a8cfbce559e84c391f5f16d10d7719751b8558873012dc88ae5a193e8\",\"fee_recipient\":\"$1\",\"state_root\":\"0xdf8d96b2c292736d39e72e25802c2744d34d3d3c616de5b362425cab01f72fa5\",\"receipts_root\":\"0x4938a2bf640846d213b156a1a853548b369cd02917fa63d8766ab665d7930bac\",\"logs_bloom\":\"0x298610600038408c201080013832408850a00bc8f801920121840030a015310010e2a0e0108628110552062811441c84802f43825c4fc82140b036c58025a28800054c80a44025c052090a0f2c209a0400058040019ea0008e589084078048050880930113a2894082e0112408b088382402a851621042212aa40018a408d07e178c68691486411aa9a2809043b000a04c040000065a030028018540b04b1820271d00821b00c29059095022322c10a530060223240416140190056608200063c82248274ba8f0098e402041cd9f451031481a1010b8220824833520490221071898802d206348449116812280014a10a2d1c210100a30010802490f0a221849\",\"prev_randao\":\"0xc061711e135cd40531ec3ee29d17d3824c0e5f80d07f721e792ab83240aa0ab5\",\"block_number\":\"8737497\",\"gas_limit\":\"30000000\",\"gas_used\":\"16367052\",\"timestamp\":\"1680080352\",\"extra_data\":\"0xd883010b05846765746888676f312e32302e32856c696e7578\",\"base_fee_per_gas\":\"231613172261\",\"block_hash\":\"0x5aa9fd22a9238925adb2b038fd6eafc77adabf554051db5bc16ae5168a52eff6\",\"transactions\":[],\"withdrawals\":[]},\"bls_to_execution_changes\":[]}}}"
|
||||
DenebBlockContents = "{\"version\":\"deneb\",\"data\":{\"block\":{\"slot\":\"5297696\",\"proposer_index\":\"153094\",\"parent_root\":\"0xe6106533af9be918120ead7440a8006c7f123cc3cb7daf1f11d951864abea014\",\"state_root\":\"0xf86196d34500ca25d1f4e7431d4d52f6f85540bcaf97dd0d2ad9ecdb3eebcdf0\",\"body\":{\"randao_reveal\":\"0xa7efee3d5ddceb60810b23e3b5d39734696418f41dfd13a0851c7be7a72acbdceaa61e1db27513801917d72519d1c1040ccfed829faf06abe06d9964949554bf4369134b66de715ea49eb4fecf3e2b7e646f1764a1993e31e53dbc6557929c12\",\"eth1_data\":{\"deposit_root\":\"0x8ec87d7219a3c873fff3bfe206b4f923d1b471ce4ff9d6d6ecc162ef07825e14\",\"deposit_count\":\"259476\",\"block_hash\":\"0x877b6f8332c7397251ff3f0c5cecec105ff7d4cb78251b47f91fd15a86a565ab\"},\"graffiti\":\"\",\"proposer_slashings\":[],\"attester_slashings\":[],\"attestations\":[],\"deposits\":[],\"voluntary_exits\":[],\"sync_aggregate\":{\"sync_committee_bits\":\"0x733dfda7f5ffde5ade73367fcbf7fffeef7fe43777ffdffab9dbad6f7eed5fff9bfec4affdefbfaddf35bf5efbff9ffff9dfd7dbf97fbfcdfaddfeffbf95f75f\",\"sync_committee_signature\":\"0x81fdf76e797f81b0116a1c1ae5200b613c8041115223cd89e8bd5477aab13de6097a9ebf42b130c59527bbb4c96811b809353a17c717549f82d4bd336068ef0b99b1feebd4d2432a69fa77fac12b78f1fcc9d7b59edbeb381adf10b15bc4a520\"},\"execution_payload\":{\"parent_hash\":\"0x14c2242a8cfbce559e84c391f5f16d10d7719751b8558873012dc88ae5a193e8\",\"fee_recipient\":\"$1\",\"state_root\":\"0xdf8d96b2c292736d39e72e25802c2744d34d3d3c616de5b362425cab01f72fa5\",\"receipts_root\":\"0x4938a2bf640846d213b156a1a853548b369cd02917fa63d8766ab665d7930bac\",\"logs_bloom\":\"0x298610600038408c201080013832408850a00bc8f801920121840030a015310010e2a0e0108628110552062811441c84802f43825c4fc82140b036c58025a28800054c80a44025c052090a0f2c209a0400058040019ea0008e589084078048050880930113a2894082e0112408b088382402a851621042212aa40018a408d07e178c68691486411aa9a2809043b000a04c040000065a030028018540b04b1820271d00821b00c29059095022322c10a530060223240416140190056608200063c82248274ba8f0098e402041cd9f451031481a1010b8220824833520490221071898802d206348449116812280014a10a2d1c210100a30010802490f0a221849\",\"prev_randao\":\"0xc061711e135cd40531ec3ee29d17d3824c0e5f80d07f721e792ab83240aa0ab5\",\"block_number\":\"8737497\",\"gas_limit\":\"30000000\",\"gas_used\":\"16367052\",\"timestamp\":\"1680080352\",\"extra_data\":\"0xd883010b05846765746888676f312e32302e32856c696e7578\",\"base_fee_per_gas\":\"231613172261\",\"block_hash\":\"0x5aa9fd22a9238925adb2b038fd6eafc77adabf554051db5bc16ae5168a52eff6\",\"transactions\":[],\"withdrawals\":[],\"blob_gas_used\":\"2316131761\",\"excess_blob_gas\":\"231613172261\"},\"bls_to_execution_changes\":[],\"blob_kzg_commitments\":[]}},\"kzg_proofs\":[],\"blobs\":[]}}"
|
||||
CapellaBlock = "{\"message\":{\"slot\":\"5297696\",\"proposer_index\":\"153094\",\"parent_root\":\"0xe6106533af9be918120ead7440a8006c7f123cc3cb7daf1f11d951864abea014\",\"state_root\":\"0xf86196d34500ca25d1f4e7431d4d52f6f85540bcaf97dd0d2ad9ecdb3eebcdf0\",\"body\":{\"randao_reveal\":\"0xa7efee3d5ddceb60810b23e3b5d39734696418f41dfd13a0851c7be7a72acbdceaa61e1db27513801917d72519d1c1040ccfed829faf06abe06d9964949554bf4369134b66de715ea49eb4fecf3e2b7e646f1764a1993e31e53dbc6557929c12\",\"eth1_data\":{\"deposit_root\":\"0x8ec87d7219a3c873fff3bfe206b4f923d1b471ce4ff9d6d6ecc162ef07825e14\",\"deposit_count\":\"259476\",\"block_hash\":\"0x877b6f8332c7397251ff3f0c5cecec105ff7d4cb78251b47f91fd15a86a565ab\"},\"graffiti\":\"\",\"proposer_slashings\":[],\"attester_slashings\":[],\"attestations\":[],\"deposits\":[],\"voluntary_exits\":[],\"sync_aggregate\":{\"sync_committee_bits\":\"0x733dfda7f5ffde5ade73367fcbf7fffeef7fe43777ffdffab9dbad6f7eed5fff9bfec4affdefbfaddf35bf5efbff9ffff9dfd7dbf97fbfcdfaddfeffbf95f75f\",\"sync_committee_signature\":\"0x81fdf76e797f81b0116a1c1ae5200b613c8041115223cd89e8bd5477aab13de6097a9ebf42b130c59527bbb4c96811b809353a17c717549f82d4bd336068ef0b99b1feebd4d2432a69fa77fac12b78f1fcc9d7b59edbeb381adf10b15bc4a520\"},\"execution_payload\":{\"parent_hash\":\"0x14c2242a8cfbce559e84c391f5f16d10d7719751b8558873012dc88ae5a193e8\",\"fee_recipient\":\"$1\",\"state_root\":\"0xdf8d96b2c292736d39e72e25802c2744d34d3d3c616de5b362425cab01f72fa5\",\"receipts_root\":\"0x4938a2bf640846d213b156a1a853548b369cd02917fa63d8766ab665d7930bac\",\"logs_bloom\":\"0x298610600038408c201080013832408850a00bc8f801920121840030a015310010e2a0e0108628110552062811441c84802f43825c4fc82140b036c58025a28800054c80a44025c052090a0f2c209a0400058040019ea0008e589084078048050880930113a2894082e0112408b088382402a851621042212aa40018a408d07e178c68691486411aa9a2809043b000a04c040000065a030028018540b04b1820271d00821b00c29059095022322c10a530060223240416140190056608200063c82248274ba8f0098e402041cd9f451031481a1010b8220824833520490221071898802d206348449116812280014a10a2d1c210100a30010802490f0a221849\",\"prev_randao\":\"0xc061711e135cd40531ec3ee29d17d3824c0e5f80d07f721e792ab83240aa0ab5\",\"block_number\":\"8737497\",\"gas_limit\":\"30000000\",\"gas_used\":\"16367052\",\"timestamp\":\"1680080352\",\"extra_data\":\"0xd883010b05846765746888676f312e32302e32856c696e7578\",\"base_fee_per_gas\":\"231613172261\",\"block_hash\":\"0x5aa9fd22a9238925adb2b038fd6eafc77adabf554051db5bc16ae5168a52eff6\",\"transactions\":[],\"withdrawals\":[]},\"bls_to_execution_changes\":[]}},\"signature\":\"$2\"}"
|
||||
DenebBlockContents = "{\"signed_block\":{\"message\":{\"slot\":\"5297696\",\"proposer_index\":\"153094\",\"parent_root\":\"0xe6106533af9be918120ead7440a8006c7f123cc3cb7daf1f11d951864abea014\",\"state_root\":\"0xf86196d34500ca25d1f4e7431d4d52f6f85540bcaf97dd0d2ad9ecdb3eebcdf0\",\"body\":{\"randao_reveal\":\"0xa7efee3d5ddceb60810b23e3b5d39734696418f41dfd13a0851c7be7a72acbdceaa61e1db27513801917d72519d1c1040ccfed829faf06abe06d9964949554bf4369134b66de715ea49eb4fecf3e2b7e646f1764a1993e31e53dbc6557929c12\",\"eth1_data\":{\"deposit_root\":\"0x8ec87d7219a3c873fff3bfe206b4f923d1b471ce4ff9d6d6ecc162ef07825e14\",\"deposit_count\":\"259476\",\"block_hash\":\"0x877b6f8332c7397251ff3f0c5cecec105ff7d4cb78251b47f91fd15a86a565ab\"},\"graffiti\":\"\",\"proposer_slashings\":[],\"attester_slashings\":[],\"attestations\":[],\"deposits\":[],\"voluntary_exits\":[],\"sync_aggregate\":{\"sync_committee_bits\":\"0x733dfda7f5ffde5ade73367fcbf7fffeef7fe43777ffdffab9dbad6f7eed5fff9bfec4affdefbfaddf35bf5efbff9ffff9dfd7dbf97fbfcdfaddfeffbf95f75f\",\"sync_committee_signature\":\"0x81fdf76e797f81b0116a1c1ae5200b613c8041115223cd89e8bd5477aab13de6097a9ebf42b130c59527bbb4c96811b809353a17c717549f82d4bd336068ef0b99b1feebd4d2432a69fa77fac12b78f1fcc9d7b59edbeb381adf10b15bc4a520\"},\"execution_payload\":{\"parent_hash\":\"0x14c2242a8cfbce559e84c391f5f16d10d7719751b8558873012dc88ae5a193e8\",\"fee_recipient\":\"$1\",\"state_root\":\"0xdf8d96b2c292736d39e72e25802c2744d34d3d3c616de5b362425cab01f72fa5\",\"receipts_root\":\"0x4938a2bf640846d213b156a1a853548b369cd02917fa63d8766ab665d7930bac\",\"logs_bloom\":\"0x298610600038408c201080013832408850a00bc8f801920121840030a015310010e2a0e0108628110552062811441c84802f43825c4fc82140b036c58025a28800054c80a44025c052090a0f2c209a0400058040019ea0008e589084078048050880930113a2894082e0112408b088382402a851621042212aa40018a408d07e178c68691486411aa9a2809043b000a04c040000065a030028018540b04b1820271d00821b00c29059095022322c10a530060223240416140190056608200063c82248274ba8f0098e402041cd9f451031481a1010b8220824833520490221071898802d206348449116812280014a10a2d1c210100a30010802490f0a221849\",\"prev_randao\":\"0xc061711e135cd40531ec3ee29d17d3824c0e5f80d07f721e792ab83240aa0ab5\",\"block_number\":\"8737497\",\"gas_limit\":\"30000000\",\"gas_used\":\"16367052\",\"timestamp\":\"1680080352\",\"extra_data\":\"0xd883010b05846765746888676f312e32302e32856c696e7578\",\"base_fee_per_gas\":\"231613172261\",\"block_hash\":\"0x5aa9fd22a9238925adb2b038fd6eafc77adabf554051db5bc16ae5168a52eff6\",\"transactions\":[],\"withdrawals\":[],\"blob_gas_used\":\"2316131761\",\"excess_blob_gas\":\"231613172261\"},\"bls_to_execution_changes\":[],\"blob_kzg_commitments\":[]}},\"signature\":\"$2\"},\"kzg_proofs\":[],\"blobs\":[]}"
|
||||
|
||||
SigningNodeAddress = "127.0.0.1"
|
||||
defaultSigningNodePort = 35333
|
||||
@ -84,14 +82,15 @@ func getNodePort(basePort: int, rt: RemoteSignerType): int =
|
||||
of RemoteSignerType.VerifyingWeb3Signer:
|
||||
basePort + 1
|
||||
|
||||
func init(T: type ForkedBeaconBlock, contents: ProduceBlockResponseV2): T =
|
||||
func init(
|
||||
T: type ForkedBeaconBlock, contents: RestPublishedSignedBlockContents): T =
|
||||
case contents.kind
|
||||
of ConsensusFork.Phase0 .. ConsensusFork.Bellatrix:
|
||||
raiseAssert "Unsupported fork"
|
||||
of ConsensusFork.Capella:
|
||||
return ForkedBeaconBlock.init(contents.capellaData)
|
||||
return ForkedBeaconBlock.init(contents.capellaData.message)
|
||||
of ConsensusFork.Deneb:
|
||||
return ForkedBeaconBlock.init(contents.denebData.`block`)
|
||||
return ForkedBeaconBlock.init(contents.denebData.signed_block.message)
|
||||
of ConsensusFork.Electra:
|
||||
debugComment "probably like the deneb case"
|
||||
return default(T)
|
||||
@ -100,27 +99,26 @@ proc getBlock(
|
||||
fork: ConsensusFork,
|
||||
feeRecipient = SigningExpectedFeeRecipient
|
||||
): ForkedBeaconBlock {.raises: [ResultError[cstring]].} =
|
||||
let
|
||||
blckData =
|
||||
try:
|
||||
case fork
|
||||
of ConsensusFork.Phase0 .. ConsensusFork.Bellatrix: raiseAssert "Unsupported fork"
|
||||
of ConsensusFork.Capella: CapellaBlock % [feeRecipient]
|
||||
of ConsensusFork.Deneb: DenebBlockContents % [feeRecipient]
|
||||
of ConsensusFork.Electra:
|
||||
debugComment "electra test signing node getblock"
|
||||
raiseAssert "electra unsupported"
|
||||
except ValueError:
|
||||
# https://github.com/nim-lang/Nim/pull/23356
|
||||
raiseAssert "Arguments match the format string"
|
||||
contentType = ContentTypeData(
|
||||
mediaType: MediaType.init("application/json"))
|
||||
let blckData =
|
||||
try:
|
||||
case fork
|
||||
of ConsensusFork.Phase0 .. ConsensusFork.Bellatrix:
|
||||
raiseAssert "Unsupported fork"
|
||||
of ConsensusFork.Capella: CapellaBlock % [feeRecipient, SomeSignature]
|
||||
of ConsensusFork.Deneb:
|
||||
DenebBlockContents % [feeRecipient, SomeSignature]
|
||||
of ConsensusFork.Electra:
|
||||
debugComment "electra test signing node getblock"
|
||||
raiseAssert "electra unsupported"
|
||||
except ValueError:
|
||||
# https://github.com/nim-lang/Nim/pull/23356
|
||||
raiseAssert "Arguments match the format string"
|
||||
|
||||
let b = decodeBytes(ProduceBlockResponseV2,
|
||||
blckData.toOpenArrayByte(0, len(blckData) - 1),
|
||||
Opt.some(contentType),
|
||||
$fork).tryGet()
|
||||
ForkedBeaconBlock.init(b)
|
||||
try:
|
||||
ForkedBeaconBlock.init(RestJson.decode(
|
||||
blckData, RestPublishedSignedBlockContents))
|
||||
except SerializationError:
|
||||
raiseAssert "malformed block contents"
|
||||
|
||||
func init(t: typedesc[Web3SignerForkedBeaconBlock],
|
||||
forked: ForkedBeaconBlock): Web3SignerForkedBeaconBlock =
|
||||
@ -371,6 +369,8 @@ let
|
||||
fatal "Invalid base port arg", basePort = basePortStr, exc = exc.msg
|
||||
quit 1
|
||||
|
||||
from std/algorithm import sorted
|
||||
|
||||
block:
|
||||
let res = createTestDir(RemoteSignerType.Web3Signer)
|
||||
doAssert(res.isOk())
|
||||
|
Loading…
x
Reference in New Issue
Block a user