diff --git a/scripts/src/hwlab-node-web-observe-runner-source.ts b/scripts/src/hwlab-node-web-observe-runner-source.ts index 4414ea5d..f73a5046 100644 --- a/scripts/src/hwlab-node-web-observe-runner-source.ts +++ b/scripts/src/hwlab-node-web-observe-runner-source.ts @@ -894,7 +894,7 @@ async function workbenchSessionSnapshot(targetPage = page) { activeConversationId: activeTab?.getAttribute("data-conversation-id") || null, activeStatus: activeTab?.getAttribute("data-status") || null, tabCount: document.querySelectorAll(".session-tab").length, - messageCount: Array.from(document.querySelectorAll('[data-testid*="message" i], [class*="message" i], article, [role="article"]')).filter(visible).length, + messageCount: Array.from(document.querySelectorAll('article.message-card, .message-card[data-message-id], article[data-message-id]')).filter(visible).length, traceRowCount: Array.from(document.querySelectorAll('[data-testid*="trace" i], [class*="trace" i], [data-trace-id], [data-testid*="event" i]')).filter(visible).length, loadingCount: Array.from(document.querySelectorAll('[aria-busy="true"], [data-loading="true"], [class*="loading" i], [data-testid*="loading" i]')).filter(visible).length, composerReady: Boolean(activeTab && input && !input.disabled && !warning), @@ -1373,7 +1373,7 @@ async function sampleOnePage(targetPage, { reason, groupSeq, pageRole, targetPag const routeSessionMatch = url.match(/\/workbench\/sessions\/([^/?#]+)/u); const activeSession = document.querySelector('[data-active="true"][data-session-id], [aria-selected="true"][data-session-id], .active[data-session-id]'); const activeSessionId = activeSession ? activeSession.getAttribute("data-session-id") : null; - const messageSelector = '[data-testid*="message" i], [class*="message" i], article, [role="article"]'; + const messageSelector = 'article.message-card, .message-card[data-message-id], article[data-message-id]'; const traceSelector = '[data-testid*="trace" i], [class*="trace" i], [data-trace-id], [data-testid*="event" i]'; const diagnosticSelector = '.api-error-diagnostic, [class*="api-error-diagnostic" i], [class*="message-diagnostic" i], [class*="projection-diagnostic" i], [data-testid="api-error-diagnostic" i], [data-testid="error-diagnostic" i], [data-testid*="diagnostic" i], [role="alert"], [aria-live="assertive"]'; const messages = summarize(messageSelector, 20);