Skip to content

feat(report-ui): Add transcript search with case-insensitive filtering and highlight#81

Draft
sentry-junior[bot] wants to merge 1 commit into
mainfrom
feat/transcript-search
Draft

feat(report-ui): Add transcript search with case-insensitive filtering and highlight#81
sentry-junior[bot] wants to merge 1 commit into
mainfrom
feat/transcript-search

Conversation

@sentry-junior

@sentry-junior sentry-junior Bot commented Jun 6, 2026

Copy link
Copy Markdown
Contributor

Adds a live search bar to the Transcript tab in the eval report UI. Typing filters out transcript events that don't match, and highlights matching substrings inline — similar to how browser find (Safari/Chrome) works.

Search behavior

The search input sits just below the Transcript section header. It normalizes the query (trim + lowercase) and filters all event types: messages, tool calls, and span events. Events that don't match are hidden; the event list clears to an empty state when nothing matches.

Highlighting

Matches are wrapped in <mark> elements styled with a new --color-search-mark theme token (#fef9c3). Highlighting works across plain-text message bodies, JSON code blocks, tool call names, and span operation fields.

Collapsed content auto-expand

When search is active, collapsed sections (system message details, tool argument/result frames, and tool-run reveal groups) render expanded so highlighted matches are visible. Clearing the search resets them to their default collapsed state.

Architecture

A new transcriptSearch.tsx module owns the TranscriptSearchProvider context, useTranscriptSearch hook, HighlightText component, and eventMatchesSearch function. The context is provided by TranscriptMessages and consumed by deep renderers (TranscriptCodeBlock, TranscriptToolView) without prop drilling. Tool-run grouping logic in TranscriptEventList filters individual tools within their original group boundaries to avoid accidental cross-group merging.


View Session in Sentry

…g and highlight

Adds a search input to the TranscriptTab that filters transcript events
by case-insensitive substring match and highlights matching text inline,
similar to browser find (Safari/Chrome native find).

Co-Authored-By: OpenAI Codex <codex@openai.com>

Co-authored-by: immutable dcramer <david@sentry.io>
@vercel

vercel Bot commented Jun 6, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
vitest-evals-docs Ready Ready Preview, Comment Jun 6, 2026 1:31am

Request Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants