From b75ebb2c1d6ff3885f38e4554e33a5889edcecfd Mon Sep 17 00:00:00 2001
From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
Date: Tue, 25 Aug 2026 11:59:59 +0200
Subject: [PATCH 1/3] Bugfix/country mapping of Macau in FMP service (#7719)
* Fix country mapping of Macau
* Update changelog
---
CHANGELOG.md | 4 ++++
.../financial-modeling-prep.service.ts | 1 +
2 files changed, 5 insertions(+)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5e1a45cd7..d9e51a5d0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -11,6 +11,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Migrated the create and edit access dialogs to dedicated routes
+### Fixed
+
+- Fixed the country mapping of Macau in the _Financial Modeling Prep_ service
+
## 3.60.0 - 2026-08-24
### Added
diff --git a/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts b/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts
index c768de070..648ec5fe1 100644
--- a/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts
+++ b/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts
@@ -56,6 +56,7 @@ export class FinancialModelingPrepService
private static countriesMapping = {
'Czech Republic': 'CZ',
'Korea (the Republic of)': 'KR',
+ Macau: 'MO',
'Russian Federation': 'RU',
'Taiwan (Province of China)': 'TW',
Turkey: 'TR'
From 0d0ed972271e2d2e451576678203153a1e64f94b Mon Sep 17 00:00:00 2001
From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
Date: Tue, 25 Aug 2026 12:43:49 +0200
Subject: [PATCH 2/3] Bugfix/response of historical market data gathering for a
specific date (#7717)
* Fix response of historical market data gathering for a specific date
* Update changelog
---
CHANGELOG.md | 1 +
apps/api/src/app/admin/admin.controller.ts | 11 ++++++-
.../data-gathering.service.spec.ts | 29 +++++++++++++++++++
.../data-gathering/data-gathering.service.ts | 6 ++--
4 files changed, 43 insertions(+), 4 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index d9e51a5d0..2bc214815 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed
- Migrated the create and edit access dialogs to dedicated routes
+- Improved the response of the historical market data gathering endpoint for a specific date
### Fixed
diff --git a/apps/api/src/app/admin/admin.controller.ts b/apps/api/src/app/admin/admin.controller.ts
index ade8781d6..f47d216f4 100644
--- a/apps/api/src/app/admin/admin.controller.ts
+++ b/apps/api/src/app/admin/admin.controller.ts
@@ -213,11 +213,20 @@ export class AdminController {
);
}
- return this.dataGatheringService.gatherSymbolForDate({
+ const marketData = await this.dataGatheringService.gatherSymbolForDate({
dataSource,
date,
symbol
});
+
+ if (!marketData) {
+ throw new HttpException(
+ getReasonPhrase(StatusCodes.NOT_FOUND),
+ StatusCodes.NOT_FOUND
+ );
+ }
+
+ return marketData;
}
@HasPermission(permissions.accessAdminControl)
diff --git a/apps/api/src/services/queues/data-gathering/data-gathering.service.spec.ts b/apps/api/src/services/queues/data-gathering/data-gathering.service.spec.ts
index 51bf9ef6a..7830d428e 100644
--- a/apps/api/src/services/queues/data-gathering/data-gathering.service.spec.ts
+++ b/apps/api/src/services/queues/data-gathering/data-gathering.service.spec.ts
@@ -219,5 +219,34 @@ describe('DataGatheringService', () => {
})
);
});
+
+ it('returns the upserted market data', async () => {
+ dataProviderService.getHistoricalRaw.mockResolvedValue({
+ 'YAHOO-AAPL': {
+ '2026-08-22': { marketPrice: 100 }
+ }
+ });
+ prismaService.marketData.upsert.mockResolvedValue({ marketPrice: 100 });
+
+ const marketData = await dataGatheringService.gatherSymbolForDate({
+ dataSource: 'YAHOO',
+ date: parseDate('2026-08-22'),
+ symbol: 'AAPL'
+ });
+
+ expect(marketData).toEqual({ marketPrice: 100 });
+ });
+
+ it('returns undefined if the data provider has no market price', async () => {
+ dataProviderService.getHistoricalRaw.mockResolvedValue({});
+
+ const marketData = await dataGatheringService.gatherSymbolForDate({
+ dataSource: 'YAHOO',
+ date: parseDate('2026-08-22'),
+ symbol: 'AAPL'
+ });
+
+ expect(marketData).toBeUndefined();
+ });
});
});
diff --git a/apps/api/src/services/queues/data-gathering/data-gathering.service.ts b/apps/api/src/services/queues/data-gathering/data-gathering.service.ts
index 531f36f0d..010fe5f90 100644
--- a/apps/api/src/services/queues/data-gathering/data-gathering.service.ts
+++ b/apps/api/src/services/queues/data-gathering/data-gathering.service.ts
@@ -348,10 +348,10 @@ export class DataGatheringService {
});
}
} catch (error) {
- this.logger.error(error.message);
- } finally {
- return undefined;
+ this.logger.error(error?.message);
}
+
+ return undefined;
}
public async gatherSymbols({
From 31096669720cb2edb12475e5de26e6310e158ca0 Mon Sep 17 00:00:00 2001
From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
Date: Tue, 25 Aug 2026 12:44:59 +0200
Subject: [PATCH 3/3] Task/improve access table (#7718)
* Improve icons and labels of access table
* Update changelog
---
CHANGELOG.md | 1 +
.../components/access-table/access-table.component.html | 7 ++++---
.../app/components/access-table/access-table.component.ts | 6 ++++--
3 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2bc214815..653cae509 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed
+- Harmonized the icons and labels in the access table to share the portfolio
- Migrated the create and edit access dialogs to dedicated routes
- Improved the response of the historical market data gathering endpoint for a specific date
diff --git a/apps/client/src/app/components/access-table/access-table.component.html b/apps/client/src/app/components/access-table/access-table.component.html
index c6e504d6c..15c0794ab 100644
--- a/apps/client/src/app/components/access-table/access-table.component.html
+++ b/apps/client/src/app/components/access-table/access-table.component.html
@@ -15,7 +15,7 @@
} @else if (element.type === 'PUBLIC') {
Public
} @else if (element.type === 'MCP') {
- MCP
+ Model Context Protocol (MCP)
}
@@ -112,10 +112,11 @@
}