From 7bc62e58ee9ef51197dc2af5c38d6b3c2db20cc7 Mon Sep 17 00:00:00 2001 From: gajinder Date: Fri, 19 Jul 2024 14:12:19 +0530 Subject: [PATCH 1/2] fix: fix the publish blinded block api parsing for optional header verison --- .../api/src/beacon/routes/beacon/block.ts | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/packages/api/src/beacon/routes/beacon/block.ts b/packages/api/src/beacon/routes/beacon/block.ts index cbf206e51a4a..cb577b97c571 100644 --- a/packages/api/src/beacon/routes/beacon/block.ts +++ b/packages/api/src/beacon/routes/beacon/block.ts @@ -444,7 +444,16 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions { - const fork = toForkName(fromHeaders(headers, MetaHeader.Version)); + let fork: ForkName; + // As per spec, version header is optional for JSON requests + const versionHeader = fromHeaders(headers, MetaHeader.Version, false); + if (versionHeader !== undefined) { + fork = toForkName(versionHeader); + } else { + // Determine fork from slot in JSON payload + fork = config.getForkName((body as SignedBlindedBeaconBlock).message.slot); + } + return { signedBlindedBlock: getExecutionForkTypes(fork).SignedBlindedBeaconBlock.fromJson(body), }; @@ -490,7 +499,16 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions { - const fork = toForkName(fromHeaders(headers, MetaHeader.Version)); + let fork: ForkName; + // As per spec, version header is optional for JSON requests + const versionHeader = fromHeaders(headers, MetaHeader.Version, false); + if (versionHeader !== undefined) { + fork = toForkName(versionHeader); + } else { + // Determine fork from slot in JSON payload + fork = config.getForkName((body as SignedBlindedBeaconBlock).message.slot); + } + return { signedBlindedBlock: getExecutionForkTypes(fork).SignedBlindedBeaconBlock.fromJson(body), broadcastValidation: query.broadcast_validation as BroadcastValidation, From 7bfbc17d80fda06cf8240dcc6820abef9f847457 Mon Sep 17 00:00:00 2001 From: gajinder Date: Fri, 19 Jul 2024 14:38:34 +0530 Subject: [PATCH 2/2] unroll on publish blinded v2 --- packages/api/src/beacon/routes/beacon/block.ts | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/packages/api/src/beacon/routes/beacon/block.ts b/packages/api/src/beacon/routes/beacon/block.ts index cb577b97c571..73680ac0afc2 100644 --- a/packages/api/src/beacon/routes/beacon/block.ts +++ b/packages/api/src/beacon/routes/beacon/block.ts @@ -499,16 +499,7 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions { - let fork: ForkName; - // As per spec, version header is optional for JSON requests - const versionHeader = fromHeaders(headers, MetaHeader.Version, false); - if (versionHeader !== undefined) { - fork = toForkName(versionHeader); - } else { - // Determine fork from slot in JSON payload - fork = config.getForkName((body as SignedBlindedBeaconBlock).message.slot); - } - + const fork = toForkName(fromHeaders(headers, MetaHeader.Version)); return { signedBlindedBlock: getExecutionForkTypes(fork).SignedBlindedBeaconBlock.fromJson(body), broadcastValidation: query.broadcast_validation as BroadcastValidation,