From 8b89fd0a47d9fed0ab12c00a852fb0cdb17bed99 Mon Sep 17 00:00:00 2001 From: ilbertt Date: Tue, 2 Dec 2025 17:28:49 +0100 Subject: [PATCH 1/2] refactor: split read state into inner function --- packages/core/src/agent/agent/http/index.ts | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/core/src/agent/agent/http/index.ts b/packages/core/src/agent/agent/http/index.ts index d05aed361..5f0c7427d 100644 --- a/packages/core/src/agent/agent/http/index.ts +++ b/packages/core/src/agent/agent/http/index.ts @@ -1121,8 +1121,14 @@ export class HttpAgent implements Agent { const url = new URL(`/api/v2/canister/${canister.toString()}/read_state`, this.host); - this.log.print(`fetching "${url.pathname}" with request:`, transformedRequest); + return await this.#readStateInner(url, transformedRequest, requestId); + } + async #readStateInner( + url: URL, + transformedRequest: ReadStateRequest, + requestId?: RequestId, + ): Promise { const backoff = this.#backoffStrategy(); try { const { responseBodyBytes } = await this.#requestAndRetry({ @@ -1138,15 +1144,13 @@ export class HttpAgent implements Agent { const decodedResponse: ReadStateResponse = cbor.decode(responseBodyBytes); - this.log.print('Read state response:', decodedResponse); - return decodedResponse; } catch (error) { let readStateError: AgentError; if (error instanceof AgentError) { // override the error code to include the request details error.code.requestContext = { - requestId, + requestId: requestId ?? requestIdOf(transformedRequest), senderPubKey: transformedRequest.body.sender_pubkey, senderSignature: transformedRequest.body.sender_sig, ingressExpiry: transformedRequest.body.content.ingress_expiry, From 36c73dd8dbf39b2cfdef4791856af4f64655c472 Mon Sep 17 00:00:00 2001 From: ilbertt Date: Tue, 2 Dec 2025 17:31:50 +0100 Subject: [PATCH 2/2] refactor: remove unneeded request id calculation --- packages/core/src/agent/agent/http/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/core/src/agent/agent/http/index.ts b/packages/core/src/agent/agent/http/index.ts index 5f0c7427d..8ac11f659 100644 --- a/packages/core/src/agent/agent/http/index.ts +++ b/packages/core/src/agent/agent/http/index.ts @@ -1106,7 +1106,6 @@ export class HttpAgent implements Agent { if (request) { // This is a pre-signed request transformedRequest = request; - requestId = requestIdOf(transformedRequest); } else { // This is fields, we need to create a request requestId = getRequestId(fields);