From db9ab26c3c972204127ad6f68707767fa765dd2b Mon Sep 17 00:00:00 2001 From: Haileyesus Date: Mon, 6 Apr 2026 23:14:19 +0300 Subject: [PATCH] refactor: remove waitForSession functionality from providers and related services --- server/src/modules/llm/llm.routes.ts | 42 ++++--------------- .../llm/providers/abstract.provider.ts | 13 ------ .../llm/providers/provider.interface.ts | 1 - .../src/modules/llm/services/llm.service.ts | 5 --- 4 files changed, 8 insertions(+), 53 deletions(-) diff --git a/server/src/modules/llm/llm.routes.ts b/server/src/modules/llm/llm.routes.ts index d5dce52a..22ad47a3 100644 --- a/server/src/modules/llm/llm.routes.ts +++ b/server/src/modules/llm/llm.routes.ts @@ -45,14 +45,6 @@ const readPathParam = (value: unknown, name: string): string => { const normalizeProviderParam = (value: unknown): string => readPathParam(value, 'provider').trim().toLowerCase(); -/** - * Allows callers to block until a launched/resumed session reaches a final state. - */ -const parseWaitForCompletion = (req: Request): boolean => { - const value = (req.body as Record | undefined)?.waitForCompletion; - return value === true; -}; - /** * Validates and normalizes rename payload. */ @@ -282,22 +274,13 @@ router.post( asyncHandler(async (req: Request, res: Response) => { const provider = parseProvider(req.params.provider); const snapshot = await llmService.startSession(provider, req.body); - - const waitForCompletion = parseWaitForCompletion(req); - if (!waitForCompletion) { - const formattedSnapshot = formatSessionSnapshot(provider, snapshot); - res.status(202).json( - createApiSuccessResponse({ - provider, - session: formattedSnapshot, - }), - ); - return; - } - - const completedSnapshot = await llmService.waitForSession(provider, snapshot.sessionId); - const finalSnapshot = completedSnapshot ?? snapshot; - res.json(createApiSuccessResponse({ provider, session: formatSessionSnapshot(provider, finalSnapshot) })); + const formattedSnapshot = formatSessionSnapshot(provider, snapshot); + res.status(202).json( + createApiSuccessResponse({ + provider, + session: formattedSnapshot, + }), + ); }), ); @@ -308,16 +291,7 @@ router.post( const sessionId = readPathParam(req.params.sessionId, 'sessionId'); const snapshot = await llmService.resumeSession(provider, sessionId, req.body); - - const waitForCompletion = parseWaitForCompletion(req); - if (!waitForCompletion) { - res.status(202).json(createApiSuccessResponse({ provider, session: formatSessionSnapshot(provider, snapshot) })); - return; - } - - const completedSnapshot = await llmService.waitForSession(provider, sessionId); - const finalSnapshot = completedSnapshot ?? snapshot; - res.json(createApiSuccessResponse({ provider, session: formatSessionSnapshot(provider, finalSnapshot) })); + res.status(202).json(createApiSuccessResponse({ provider, session: formatSessionSnapshot(provider, snapshot) })); }), ); diff --git a/server/src/modules/llm/providers/abstract.provider.ts b/server/src/modules/llm/providers/abstract.provider.ts index 4b8c9d2b..4344b237 100644 --- a/server/src/modules/llm/providers/abstract.provider.ts +++ b/server/src/modules/llm/providers/abstract.provider.ts @@ -64,19 +64,6 @@ export abstract class AbstractProvider implements IProvider { return [...this.sessions.values()].map((session) => this.toSnapshot(session)); } - /** - * Waits for a running session to complete and returns the final snapshot. - */ - async waitForSession(sessionId: string): Promise { - const session = this.sessions.get(sessionId); - if (!session) { - return null; - } - - await session.completion; - return this.toSnapshot(session); - } - /** * Requests a graceful session stop. */ diff --git a/server/src/modules/llm/providers/provider.interface.ts b/server/src/modules/llm/providers/provider.interface.ts index 1df52cf0..3db3e3be 100644 --- a/server/src/modules/llm/providers/provider.interface.ts +++ b/server/src/modules/llm/providers/provider.interface.ts @@ -89,7 +89,6 @@ export interface IProvider { getSession(sessionId: string): ProviderSessionSnapshot | null; listSessions(): ProviderSessionSnapshot[]; - waitForSession(sessionId: string): Promise; } /** diff --git a/server/src/modules/llm/services/llm.service.ts b/server/src/modules/llm/services/llm.service.ts index ce9a5d7c..3274c3cd 100644 --- a/server/src/modules/llm/services/llm.service.ts +++ b/server/src/modules/llm/services/llm.service.ts @@ -123,11 +123,6 @@ export const llmService = { return provider.resumeSession({ ...input, sessionId }); }, - async waitForSession(providerName: string, sessionId: string): Promise { - const provider = llmProviderRegistry.resolveProvider(providerName); - return provider.waitForSession(sessionId); - }, - async stopSession(providerName: string, sessionId: string): Promise { const provider = llmProviderRegistry.resolveProvider(providerName); return provider.stopSession(sessionId);