From a93a7fd8dcd165b10e8ca42ce6e81dcb476fbf76 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Jun 2026 05:41:24 +0000 Subject: [PATCH 1/4] Initial plan From fd4d011a8ae1b9e54c92a0424aa7ee1fe7335328 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Jun 2026 05:46:05 +0000 Subject: [PATCH 2/4] Fix circular import causing backend test failure --- server/services/apiService.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/server/services/apiService.js b/server/services/apiService.js index b64db39..a606226 100644 --- a/server/services/apiService.js +++ b/server/services/apiService.js @@ -1,7 +1,6 @@ // apiService.js import axios from "axios"; import config from "../config/config.js"; -import secureStorageService from "./secureStorageService.js"; import { logger } from "../config/loggerConfig.js"; // API service for making HTTP requests @@ -464,12 +463,16 @@ class ApiService { `[API] ${process.env.NODE_ENV !== "production" ? "Mock " : ""}file upload: ${file.originalname} (${file.size} bytes)` ); - // Use local storage service instead of mocks + // Lazily load secureStorageService to avoid circular-import initialization + // issues during test/app bootstrap. + const { default: secureStorageService } = await import( + "./secureStorageService.js" + ); + if (!secureStorageService.initialized) { await secureStorageService.initialize(); } - // Use the correct method name that exists in secureStorageService return secureStorageService.uploadToIPFS(file); } From 2ec2609aad9016dd1836c226e7d6c7d76a12dd0f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Jun 2026 05:47:28 +0000 Subject: [PATCH 3/4] Cache lazy secureStorageService import in apiService --- server/services/apiService.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/server/services/apiService.js b/server/services/apiService.js index a606226..e9ed2d8 100644 --- a/server/services/apiService.js +++ b/server/services/apiService.js @@ -3,6 +3,8 @@ import axios from "axios"; import config from "../config/config.js"; import { logger } from "../config/loggerConfig.js"; +let secureStorageServiceModulePromise = null; + // API service for making HTTP requests class ApiService { constructor(options = {}) { @@ -465,9 +467,11 @@ class ApiService { // Lazily load secureStorageService to avoid circular-import initialization // issues during test/app bootstrap. - const { default: secureStorageService } = await import( - "./secureStorageService.js" - ); + secureStorageServiceModulePromise = + secureStorageServiceModulePromise || + import("./secureStorageService.js"); + const { default: secureStorageService } = + await secureStorageServiceModulePromise; if (!secureStorageService.initialized) { await secureStorageService.initialize(); From 025569f8ab0c25121473075f3d51c4f875785f59 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Jun 2026 05:48:33 +0000 Subject: [PATCH 4/4] Refine cached lazy import for secure storage service --- server/services/apiService.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/server/services/apiService.js b/server/services/apiService.js index e9ed2d8..f13fb49 100644 --- a/server/services/apiService.js +++ b/server/services/apiService.js @@ -467,9 +467,9 @@ class ApiService { // Lazily load secureStorageService to avoid circular-import initialization // issues during test/app bootstrap. - secureStorageServiceModulePromise = - secureStorageServiceModulePromise || - import("./secureStorageService.js"); + if (!secureStorageServiceModulePromise) { + secureStorageServiceModulePromise = import("./secureStorageService.js"); + } const { default: secureStorageService } = await secureStorageServiceModulePromise;