From d90ab7e61f1e9224f18e98cb4b5162c9714012d1 Mon Sep 17 00:00:00 2001 From: Pragati Date: Wed, 18 Mar 2026 12:44:16 +0530 Subject: [PATCH 1/2] fix: replace silent failures with proper error handling in djed sdk --- djed-sdk/src/djed/reserveCoin.js | 6 ++++-- djed-sdk/src/djed/stableCoin.js | 9 ++++++--- djed-sdk/src/djed/tradeUtils.js | 3 ++- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/djed-sdk/src/djed/reserveCoin.js b/djed-sdk/src/djed/reserveCoin.js index da2a6bc..39070be 100644 --- a/djed-sdk/src/djed/reserveCoin.js +++ b/djed-sdk/src/djed/reserveCoin.js @@ -38,7 +38,8 @@ export const tradeDataPriceBuyRc = async (djed, rcDecimals, amountScaled) => { totalBCUnscaled, }; } catch (error) { - console.log("error", error); + console.error("tradeDataPriceBuyRc error:", error); + throw new Error("Failed to calculate reserve coin buy price"); } }; @@ -66,7 +67,8 @@ export const tradeDataPriceSellRc = async (djed, rcDecimals, amountScaled) => { totalBCUnscaled: totalBCAmount.toString(), }; } catch (error) { - console.log("error", error); + console.error("tradeDataPriceSellRc error:", error); + throw new Error("Failed to calculate reserve coin sell price"); } }; diff --git a/djed-sdk/src/djed/stableCoin.js b/djed-sdk/src/djed/stableCoin.js index f845772..8bbbbc4 100644 --- a/djed-sdk/src/djed/stableCoin.js +++ b/djed-sdk/src/djed/stableCoin.js @@ -38,7 +38,8 @@ export const tradeDataPriceBuySc = async (djed, scDecimals, amountScaled) => { totalBCUnscaled, }; } catch (error) { - console.log("error", error); + console.error("tradeDataPriceBuySc error:", error); + throw new Error("Failed to calculate stable coin buy price"); } }; @@ -71,7 +72,8 @@ export const tradeDataPriceSellSc = async (djed, scDecimals, amountScaled) => { totalBCScaled: decimalScaling(totalBCAmount.toString(), BC_DECIMALS), }; } catch (error) { - console.log("error", error); + console.error("tradeDataPriceSellSc error:", error); + throw new Error("Failed to calculate stable coin sell price"); } }; @@ -129,6 +131,7 @@ export const calculateFutureScPrice = async ({ : futurePrice.toString(); } } catch (error) { - console.log("calculateFutureScPrice error ", error); + console.error("calculateFutureScPrice error:", error); + throw new Error("Failed to calculate future stable coin price"); } }; diff --git a/djed-sdk/src/djed/tradeUtils.js b/djed-sdk/src/djed/tradeUtils.js index 456f1f1..c8ef4a4 100644 --- a/djed-sdk/src/djed/tradeUtils.js +++ b/djed-sdk/src/djed/tradeUtils.js @@ -199,6 +199,7 @@ export const getFees = async (djed) => { fee, }; } catch (error) { - console.log("error", error); + console.error("getFees error:", error); + throw new Error("Failed to fetch fees from contract"); } }; From 527457062bf4ba4a6799a7cda2e4ae76c5159d44 Mon Sep 17 00:00:00 2001 From: Pragati Date: Sun, 22 Mar 2026 22:00:17 +0530 Subject: [PATCH 2/2] fix(errors): preserve original error cause across SDK - Attach cause to rethrown errors in reserveCoin, stableCoin, and tradeUtils - Improves debuggability and error traceability --- djed-sdk/src/djed/reserveCoin.js | 4 ++-- djed-sdk/src/djed/stableCoin.js | 6 +++--- djed-sdk/src/djed/tradeUtils.js | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/djed-sdk/src/djed/reserveCoin.js b/djed-sdk/src/djed/reserveCoin.js index 39070be..a36abc7 100644 --- a/djed-sdk/src/djed/reserveCoin.js +++ b/djed-sdk/src/djed/reserveCoin.js @@ -39,7 +39,7 @@ export const tradeDataPriceBuyRc = async (djed, rcDecimals, amountScaled) => { }; } catch (error) { console.error("tradeDataPriceBuyRc error:", error); - throw new Error("Failed to calculate reserve coin buy price"); + throw new Error("Failed to calculate reserve coin buy price", { cause: error }); } }; @@ -68,7 +68,7 @@ export const tradeDataPriceSellRc = async (djed, rcDecimals, amountScaled) => { }; } catch (error) { console.error("tradeDataPriceSellRc error:", error); - throw new Error("Failed to calculate reserve coin sell price"); + throw new Error("Failed to calculate reserve coin sell price", { cause: error }); } }; diff --git a/djed-sdk/src/djed/stableCoin.js b/djed-sdk/src/djed/stableCoin.js index 8bbbbc4..a3fe5a0 100644 --- a/djed-sdk/src/djed/stableCoin.js +++ b/djed-sdk/src/djed/stableCoin.js @@ -39,7 +39,7 @@ export const tradeDataPriceBuySc = async (djed, scDecimals, amountScaled) => { }; } catch (error) { console.error("tradeDataPriceBuySc error:", error); - throw new Error("Failed to calculate stable coin buy price"); + throw new Error("Failed to calculate stable coin buy price", { cause: error }); } }; @@ -73,7 +73,7 @@ export const tradeDataPriceSellSc = async (djed, scDecimals, amountScaled) => { }; } catch (error) { console.error("tradeDataPriceSellSc error:", error); - throw new Error("Failed to calculate stable coin sell price"); + throw new Error("Failed to calculate stable coin sell price", { cause: error }); } }; @@ -132,6 +132,6 @@ export const calculateFutureScPrice = async ({ } } catch (error) { console.error("calculateFutureScPrice error:", error); - throw new Error("Failed to calculate future stable coin price"); + throw new Error("Failed to calculate future stable coin price", { cause: error }); } }; diff --git a/djed-sdk/src/djed/tradeUtils.js b/djed-sdk/src/djed/tradeUtils.js index c8ef4a4..8f225c6 100644 --- a/djed-sdk/src/djed/tradeUtils.js +++ b/djed-sdk/src/djed/tradeUtils.js @@ -200,6 +200,6 @@ export const getFees = async (djed) => { }; } catch (error) { console.error("getFees error:", error); - throw new Error("Failed to fetch fees from contract"); + throw new Error("Failed to fetch fees from contract", { cause: error }); } };