From 8f6d66a34b21a3be61d831f499b25b37c6802103 Mon Sep 17 00:00:00 2001 From: mailtoboggavarapu-coder Date: Mon, 20 Apr 2026 18:45:57 -0400 Subject: [PATCH] fix(exchange-rate): return aValue fallback when exchange rate data is missing Fixes #6482 toCurrencyAtDate() previously returned undefined when no historical exchange rate data was available for the requested date. This undefined propagated into activity fields like feeInBaseCurrency and valueInBaseCurrency, causing [big.js] Invalid number crashes on the Overview, Portfolio, and Holdings pages. Fix: log a warning and return the original aValue (1:1 fallback) instead of undefined, preventing the crash while gracefully degrading. Signed-off-by: Venkateswarlu Boggavarapu --- .../exchange-rate-data/exchange-rate-data.service.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/api/src/services/exchange-rate-data/exchange-rate-data.service.ts b/apps/api/src/services/exchange-rate-data/exchange-rate-data.service.ts index 024bdf4e1..4686ae53c 100644 --- a/apps/api/src/services/exchange-rate-data/exchange-rate-data.service.ts +++ b/apps/api/src/services/exchange-rate-data/exchange-rate-data.service.ts @@ -349,7 +349,11 @@ export class ExchangeRateDataService { 'ExchangeRateDataService' ); - return undefined; + Logger.warn( + `No exchange rate data found for ${aFromCurrency} -> ${aToCurrency} on ${aDate.toISOString()}, returning original value as fallback`, + 'ExchangeRateDataService' + ); + return aValue; } private async getExchangeRates({