Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 8 additions & 5 deletions packages/core/src/agent/agent/http/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand All @@ -1121,8 +1120,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<ReadStateResponse> {
const backoff = this.#backoffStrategy();
try {
const { responseBodyBytes } = await this.#requestAndRetry({
Expand All @@ -1138,15 +1143,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,
Expand Down
Loading