Skip to content

feat(eval): online-insight TUI get/list + #2029 insights column (P4) - #2072

Open
jariy17 wants to merge 1 commit into
feat/online-eval-byo-rolefrom
feat/online-insight-tui
Open

feat(eval): online-insight TUI get/list + #2029 insights column (P4)#2072
jariy17 wants to merge 1 commit into
feat/online-eval-byo-rolefrom
feat/online-insight-tui

Conversation

@jariy17

@jariy17 jariy17 commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

P4 — online-insight read-only TUI + #2029 insights column

Stacked on #2070 (base branch feat/online-eval-byo-role, P3). Read-only TUI only — no deploy/mutation paths.

New screens (src/handlers/eval/online-insight/)

  • screen.tsxOnlineInsightScreen (RouterScreen path ["agentcore","eval","online-insight"]).
  • list/screen.tsxOnlineInsightListScreen; reuses OnlineEvalPicker, reads via core.eval.listOnlineInsights.
  • get/screen.tsxOnlineInsightGetScreen + OnlineInsightGetJsonScreen via core.eval.getOnlineInsight. Detail shows insight count + clustering frequencies instead of the evaluator count.

Router + routes

  • online-insight/index.tsx: added .use(withTuiOnEmptyFlagsAndArgs), .default(renderTui), .supportedTuiCommands("get","list"), and export { OnlineInsightScreen }.
  • Root.tsx: added the 5 online-insight routes mirroring online-eval (menu · list · get→list redirect · get/:configId · get/:configId/json) and the screen imports.

#2029 — insights indicator column

Issue #2029: "online-eval imperative TUI table should include an 'insights' field that indicates whether that online eval has insights enabled."

  • Added a has-insights column to the online-eval list table (and the online-insight list, same picker). Value = config.insights?.length > 0, rendered yes / -. Sourced from OnlineEvaluationConfigSummary.insights on the list summary — no extra API call.

Picker: parameterized, not forked

OnlineEvalPicker gained optional resourceLabel, queryKey, and loadPage props (defaulting to the online-eval behavior) so the online-insight list reuses the same component and columns. Columns/toRow are shared (identical for both lists) with the insights column baked into the default onlineEvalColumns, so no fork and no dead per-list column overrides.

Tests

  • New online-insight.screen.test.tsx mirroring the online-eval screen test: menu (read-only commands only), picker (insights column yes/-, listOnlineInsights args, bare-get redirect, selection → detail, empty state), detail (sampling / execution / insight count / clustering frequencies, getOnlineInsight args, JSON view, retry).
  • Added a online-eval imperative TUI table should include "insights" field that indicates whether that online eval has insights enabled #2029 insights-column case to online-eval.screen.test.tsx.
  • bun test src/handlers/eval/online-insight + online-eval: 64 pass. Broader bun test src/components src/handlers/eval: 319 pass. tsc --noEmit: clean.

@github-actions github-actions Bot added the size/m PR size: M label Aug 22, 2026
@github-actions github-actions Bot added agentcore-harness-reviewing AgentCore Harness review in progress and removed agentcore-harness-reviewing AgentCore Harness review in progress labels Aug 22, 2026
@jariy17
jariy17 marked this pull request as ready for review August 22, 2026 15:56
@jariy17 jariy17 changed the title feat(eval): online-insight TUI get/list + #2029 insights column (P4, draft) feat(eval): online-insight TUI get/list + #2029 insights column (P4) Aug 22, 2026
@github-actions github-actions Bot added size/m PR size: M and removed size/m PR size: M labels Aug 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/m PR size: M

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant