From faa485515b829d1f2ca296a46fcdaa9d66185786 Mon Sep 17 00:00:00 2001 From: Koen Date: Fri, 7 Mar 2025 17:31:13 +0200 Subject: [PATCH 1/2] fix: parse away trailing / from consensus host --- yarn-project/blob-sink/src/client/config.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/yarn-project/blob-sink/src/client/config.ts b/yarn-project/blob-sink/src/client/config.ts index e07c7cb35e75..e0750521dda2 100644 --- a/yarn-project/blob-sink/src/client/config.ts +++ b/yarn-project/blob-sink/src/client/config.ts @@ -61,5 +61,12 @@ export const blobSinkConfigMapping: ConfigMappingsType = { * @returns The blob sink configuration. */ export function getBlobSinkConfigFromEnv(): BlobSinkConfig { - return getConfigFromMappings(blobSinkConfigMapping); + const config = getConfigFromMappings(blobSinkConfigMapping); + + // check if l1ConsensusHostUrl has a trailing '/' and remove it + if (config.l1ConsensusHostUrl && config.l1ConsensusHostUrl.endsWith('/')) { + config.l1ConsensusHostUrl = config.l1ConsensusHostUrl.slice(0, -1); + } + + return config; } From a56613474d36e74de0f109a8407c1e8f8afb02a5 Mon Sep 17 00:00:00 2001 From: Koen Date: Fri, 7 Mar 2025 18:08:17 +0200 Subject: [PATCH 2/2] fix: move consensus trailing / check to same location as api key set --- yarn-project/blob-sink/src/client/config.ts | 9 +-------- yarn-project/blob-sink/src/client/http.ts | 4 ++++ 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/yarn-project/blob-sink/src/client/config.ts b/yarn-project/blob-sink/src/client/config.ts index e0750521dda2..e07c7cb35e75 100644 --- a/yarn-project/blob-sink/src/client/config.ts +++ b/yarn-project/blob-sink/src/client/config.ts @@ -61,12 +61,5 @@ export const blobSinkConfigMapping: ConfigMappingsType = { * @returns The blob sink configuration. */ export function getBlobSinkConfigFromEnv(): BlobSinkConfig { - const config = getConfigFromMappings(blobSinkConfigMapping); - - // check if l1ConsensusHostUrl has a trailing '/' and remove it - if (config.l1ConsensusHostUrl && config.l1ConsensusHostUrl.endsWith('/')) { - config.l1ConsensusHostUrl = config.l1ConsensusHostUrl.slice(0, -1); - } - - return config; + return getConfigFromMappings(blobSinkConfigMapping); } diff --git a/yarn-project/blob-sink/src/client/http.ts b/yarn-project/blob-sink/src/client/http.ts index 67851a2c9369..82b900ce9e40 100644 --- a/yarn-project/blob-sink/src/client/http.ts +++ b/yarn-project/blob-sink/src/client/http.ts @@ -261,6 +261,10 @@ function getBeaconNodeFetchOptions(url: string, config: BlobSinkConfig) { if (config.l1ConsensusHostApiKey && !config.l1ConsensusHostApiKeyHeader) { formattedUrl += `${formattedUrl.includes('?') ? '&' : '?'}key=${config.l1ConsensusHostApiKey}`; } + // check if l1ConsensusHostUrl has a trailing '/' and remove it + if (config.l1ConsensusHostUrl && config.l1ConsensusHostUrl.endsWith('/')) { + config.l1ConsensusHostUrl = config.l1ConsensusHostUrl.slice(0, -1); + } return { url: formattedUrl, ...(config.l1ConsensusHostApiKey &&