Skip to content

feat(evaluation) 13/15: dataset card and run detail components - #824

Open
Ahmath-Gadji wants to merge 1 commit into
eval/12-ui-api-clientfrom
eval/13-ui-components
Open

feat(evaluation) 13/15: dataset card and run detail components#824
Ahmath-Gadji wants to merge 1 commit into
eval/12-ui-api-clientfrom
eval/13-ui-components

Conversation

@Ahmath-Gadji

@Ahmath-Gadji Ahmath-Gadji commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Part 13 of 15 of the split of #811. Targets eval/12-ui-api-client (#823). Two self-contained components; the page composing them is part 14.

What

  • DatasetCard — lists stored datasets, owns the upload dialog, the start button and the delete confirmation.
  • RunDetail — one run: header, error, indexing panel, quality panel, per-question table.

Notable

  • Starting is gated on runActive, passed down from the run list. Runs are serialised server-side, so the button should be disabled rather than reliably return 409 — the API still enforces it, this just stops the UI from inviting a click it knows will fail.
  • RunDetail polls only while the run can still change (isActiveStatus, part 12). A finished run stops refetching rather than polling a row that will never change again.
  • Errors are rendered with [overflow-wrap:anywhere] — a run error can be a 2000-char promptfoo stderr tail with no spaces in it, which would otherwise blow out the layout.
  • The metric panels degrade rather than disappear. A run that failed during indexing has retrieval/answer as null; each panel renders "Not measured yet" so the reader can tell how far the run got.

Testing

tsc -b clean; eslint reports only the warning already present on develop. Rendering tests land with the page in part 14, where the components are reachable.

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@EnjoyBacon7, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 59 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 2568a1b8-b7b7-4557-bee8-9b3d2d04c13c

📥 Commits

Reviewing files that changed from the base of the PR and between 3217048 and a8a3a05.

📒 Files selected for processing (2)
  • ui/src/pages/admin/evaluation/dataset-card.tsx
  • ui/src/pages/admin/evaluation/run-detail.tsx
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch eval/13-ui-components

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Ahmath-Gadji

Copy link
Copy Markdown
Collaborator Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown
✅ Action performed

Full review finished.


Your included review limit is currently reached under our Fair Usage Limits Policy. This review may still proceed through usage-based billing if eligible. Your next included review will be available in 56 minutes.

@Ahmath-Gadji
Ahmath-Gadji force-pushed the eval/12-ui-api-client branch from d624d7d to b287020 Compare July 27, 2026 14:32
@Ahmath-Gadji
Ahmath-Gadji force-pushed the eval/13-ui-components branch from e578ca5 to 94070cb Compare July 27, 2026 14:32
@Ahmath-Gadji
Ahmath-Gadji force-pushed the eval/12-ui-api-client branch from b287020 to 1462181 Compare July 27, 2026 15:14
@Ahmath-Gadji
Ahmath-Gadji force-pushed the eval/13-ui-components branch from 94070cb to 45a23ee Compare July 27, 2026 15:14
@Ahmath-Gadji
Ahmath-Gadji force-pushed the eval/12-ui-api-client branch from 1462181 to f7a57bb Compare July 27, 2026 15:31
@Ahmath-Gadji
Ahmath-Gadji force-pushed the eval/13-ui-components branch from 45a23ee to e6c0be8 Compare July 27, 2026 15:31
`DatasetCard` lists stored datasets and owns the upload dialog, the start
button and the delete confirmation. Starting is gated on `runActive`,
passed down from the run list — runs are serialised server-side, so the
button should be disabled rather than reliably 409.

`RunDetail` renders one run: header, error, indexing panel, quality panel
and the per-question table. It polls only while `isActiveStatus(status)`,
so a finished run stops refetching instead of polling a row that can no
longer change.

Both are self-contained: the page that composes them lands next.
@EnjoyBacon7
EnjoyBacon7 force-pushed the eval/12-ui-api-client branch from f7a57bb to 3217048 Compare July 28, 2026 10:25
@EnjoyBacon7
EnjoyBacon7 force-pushed the eval/13-ui-components branch from e6c0be8 to a8a3a05 Compare July 28, 2026 10:25
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.

2 participants