From ba3c9e0eadb5ee9e77aa78016a80452e87e33bcf Mon Sep 17 00:00:00 2001 From: Jorge Cabiedes <57368278+jorge-cab@users.noreply.github.com> Date: Tue, 6 May 2025 08:40:18 -0700 Subject: [PATCH] Gracefully handle failures when programmatically clicking DOM elements --- .../packages/react-mcp-server/src/tools/runtimePerf.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/compiler/packages/react-mcp-server/src/tools/runtimePerf.ts b/compiler/packages/react-mcp-server/src/tools/runtimePerf.ts index 91463046e5..e23caa0ed6 100644 --- a/compiler/packages/react-mcp-server/src/tools/runtimePerf.ts +++ b/compiler/packages/react-mcp-server/src/tools/runtimePerf.ts @@ -135,7 +135,13 @@ export async function measurePerformance( return window.__INTERACTABLE_SELECTORS__; }); - await Promise.all(selectors.map(selector => page.click(selector))); + await Promise.all(selectors.map(async (selector: string) => { + try { + await page.click(selector) + } catch (e) { + console.log(`warning: Could not click ${selector}: ${e.message}`) + } + })); await delay(500); // Visit a new page for 1s to background the current page so that WebVitals can finish being calculated