Skip to content

feat(viewer): sortable programs browser for a run#18

Merged
aktasbatuhan merged 1 commit into
mainfrom
feat/viewer-programs-table
Jun 3, 2026
Merged

feat(viewer): sortable programs browser for a run#18
aktasbatuhan merged 1 commit into
mainfrom
feat/viewer-programs-table

Conversation

@aktasbatuhan

Copy link
Copy Markdown
Member

Viewer roadmap item C. Adds a full-width, sortable programs browser at /setup/{label}/run/{idx}/programs, modeled on AlphaEvolve's Programs tab.

What it does

  • Surfaces the task-metric columns the dashboard hides. The narrow dashboard step-list only shows step / model / score / Δ. This table adds the task-specific numeric metrics — raw_C, sequence_length, wall_seconds for autocorrelation; circles_n, sum_of_radii for circle packing — auto-detecting which metrics actually appear and excluding folded/constant ones (combined_score, combined_score_std, stage, runs_successfully).
  • Server-side sorting (no JS). Each column header links to ?sort={col}&dir={asc|desc}. Defaults to score desc to surface the best program first; step/model sort ascending by default. An unknown sort key falls back to score rather than erroring.
  • Stays connected to the dashboard. Every row links back to ?step={n}; the run's best row is tinted and new-best steps keep the left accent bar (consistent with the dashboard list). The dashboard gains a "browse all N programs as a table →" link.

Verification

  • 12 viewer tests pass (added: route, metric-column selection, dashboard link, ?step= row links, sort-param fallback).
  • Live crawl: 99/99 programs routes across every arm in both tasks returned 200; columns adapt correctly per task.

🤖 Generated with Claude Code

Adds /setup/{label}/run/{idx}/programs — a full-width, sortable table of
every program in a run, modeled on AlphaEvolve's Programs browser. It
surfaces the task-specific metric columns (e.g. raw_C, sequence_length,
wall_seconds for autocorrelation; circles_n, sum_of_radii for packing)
that the narrow dashboard step-list hides, auto-detecting which numeric
metrics actually vary and excluding folded/constant ones (combined_score,
combined_score_std, stage, runs_successfully).

Sorting is server-side (no JS): each column header links to
?sort={col}&dir={asc|desc}, defaulting to score desc to surface the best
program first; an unknown sort key falls back rather than erroring. Every
row links back into the dashboard at ?step={n}; the run's best row is
tinted and new-best steps keep the left accent bar. The dashboard gains a
"browse all N programs as a table" link.

Tests cover the route, metric-column selection (task metric in, universal
keys out), the dashboard link, ?step row links, and sort-param fallback.
@aktasbatuhan aktasbatuhan merged commit 8218d4a into main Jun 3, 2026
@aktasbatuhan aktasbatuhan deleted the feat/viewer-programs-table branch June 3, 2026 21:21
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.

1 participant