From e017d4638aa078eef3f2dce7409dfac479a50ae8 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Mon, 5 Oct 2026 21:07:39 +0200 Subject: [PATCH] Fix state of market data in historical market data gathering for specific date --- .../data-gathering.service.spec.ts | 22 ++++++++++++++++++- .../data-gathering/data-gathering.service.ts | 2 +- 2 files changed, 22 insertions(+), 2 deletions(-) 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 4fc80d3d64..cdd4024a11 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 @@ -222,7 +222,27 @@ describe('DataGatheringService', () => { expect(prismaService.marketData.upsert).toHaveBeenCalledWith( expect.objectContaining({ create: expect.objectContaining({ isCarriedForward: false }), - update: { marketPrice: 100, isCarriedForward: false } + update: { marketPrice: 100, isCarriedForward: false, state: 'CLOSE' } + }) + ); + }); + + it('sets the state to CLOSE on a previously intraday market price', async () => { + dataProviderService.getHistoricalRaw.mockResolvedValue({ + 'YAHOO-AAPL': { + '2026-08-22': { marketPrice: 100 } + } + }); + + await dataGatheringService.gatherSymbolForDate({ + dataSource: 'YAHOO', + date: parseDate('2026-08-22'), + symbol: 'AAPL' + }); + + expect(prismaService.marketData.upsert).toHaveBeenCalledWith( + expect.objectContaining({ + update: expect.objectContaining({ state: 'CLOSE' }) }) ); }); 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 1162143421..a91f6a9210 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 @@ -346,7 +346,7 @@ export class DataGatheringService { date: startOfUtcDate, isCarriedForward: false }, - update: { marketPrice, isCarriedForward: false }, + update: { marketPrice, isCarriedForward: false, state: 'CLOSE' }, where: { dataSource_date_symbol: { dataSource,