Skip to content

Clicking a trace row in the eval detail view does nothing (UI stays on eval-level panel) #391

@emilkallioniemi

Description

@emilkallioniemi

Summary

In evalite@1.0.0-beta.16 and current v1, clicking a trace row in the eval detail page does not navigate to the per-trace view. The per-trace view is fully implemented — it just never mounts.

Reproduction

  1. pnpm run example (or any run with a case that produces ≥1 trace, e.g. anything using wrapAISDKModel).
  2. Open the UI, navigate to a suite, open an eval that has traces.
  3. Click any Trace N row in the left sidebar.

Expected: URL becomes /suite/<name>/eval/<index>?trace=<N-1> and the right panel swaps to Token Usage / Input / Output for that trace.

Actual: URL does not change; the right panel stays on the eval-level view. The border-l-4 border-primary active indicator also doesn't move.

Workaround: manually append ?trace=N to the URL — the per-trace panel renders correctly, confirming the route logic works and only the click navigation is broken.

Root cause

TraceMenuItem in apps/evalite-ui/app/routes/suite.$name.eval.$evalIndex.tsx accepts a traceIndex prop but the Link never forwards it to the route's search. The route reads trace from Route.useSearch() to choose which panel to render, so if trace is never written to the URL, the per-trace view never mounts.

Proposed fix

PR up: a four-line addition to the Linksearch={(prev) => ({ ...prev, trace: props.traceIndex })} — that preserves other search params (timestamp, q) and still clears ?trace for the top "Eval" row (where traceIndex is undefined). The validateSearch schema already declares trace: z.number().optional(), so no schema change is required.

Environment

  • evalite@1.0.0-beta.16 (reproduced from the shipped bundle), v1 branch (reproduced in source)
  • main (v0.x) uses different route files and is unaffected.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions