From c87edcc462a1b514e3d9f16cc41f05a14cbf62b8 Mon Sep 17 00:00:00 2001 From: Rohit Rajan Date: Mon, 8 Dec 2025 11:35:14 +0530 Subject: [PATCH] fix: add user id checks --- server/src/api/sdk.ts | 8 +++++--- server/src/sdk/selectorValidator.ts | 12 +++++++++++- server/src/sdk/workflowEnricher.ts | 2 +- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/server/src/api/sdk.ts b/server/src/api/sdk.ts index 55d37000..76e63d31 100644 --- a/server/src/api/sdk.ts +++ b/server/src/api/sdk.ts @@ -60,9 +60,11 @@ router.post("/sdk/robots", requireAPIKey, async (req: AuthenticatedRequest, res: }); } } else { - const enrichResult = await WorkflowEnricher.enrichWorkflow(workflowFile.workflow); + const enrichResult = await WorkflowEnricher.enrichWorkflow(workflowFile.workflow, user.id); if (!enrichResult.success) { + logger.error("[SDK] Error in Selector Validation:\n" + JSON.stringify(enrichResult.errors, null, 2)) + return res.status(400).json({ error: "Workflow validation failed", details: enrichResult.errors @@ -640,7 +642,7 @@ router.post("/sdk/robots/:id/runs/:runId/abort", requireAPIKey, async (req: Auth */ router.post("/sdk/extract/llm", requireAPIKey, async (req: AuthenticatedRequest, res: Response) => { try { - const user = req.user.id + const user = req.user const { url, prompt, llmProvider, llmModel, llmApiKey, llmBaseUrl, robotName } = req.body; if (!url || !prompt) { @@ -654,7 +656,7 @@ router.post("/sdk/extract/llm", requireAPIKey, async (req: AuthenticatedRequest, model: llmModel, apiKey: llmApiKey, baseUrl: llmBaseUrl - }); + }, user.id); if (!workflowResult.success || !workflowResult.workflow) { return res.status(400).json({ diff --git a/server/src/sdk/selectorValidator.ts b/server/src/sdk/selectorValidator.ts index 266742c9..354899cc 100644 --- a/server/src/sdk/selectorValidator.ts +++ b/server/src/sdk/selectorValidator.ts @@ -34,7 +34,17 @@ export class SelectorValidator { */ async initialize(page: Page, url: string): Promise { this.page = page; - await this.page.goto(url, { waitUntil: 'networkidle', timeout: 30000 }); + try { + await page.goto(url, { + waitUntil: "networkidle", + timeout: 100000, + }); + } catch (err) { + await page.goto(url, { + waitUntil: "domcontentloaded", + timeout: 100000, + }); + } logger.info(`Navigated to ${url} using RemoteBrowser page`); } diff --git a/server/src/sdk/workflowEnricher.ts b/server/src/sdk/workflowEnricher.ts index 2980c8de..c15ba14d 100644 --- a/server/src/sdk/workflowEnricher.ts +++ b/server/src/sdk/workflowEnricher.ts @@ -33,7 +33,7 @@ export class WorkflowEnricher { */ static async enrichWorkflow( simplifiedWorkflow: SimplifiedWorkflowPair[], - userId: string = 'sdk-validation-user' + userId: string ): Promise<{ success: boolean; workflow?: any[]; errors?: string[]; url?: string }> { const errors: string[] = []; const enrichedWorkflow: any[] = [];