Commit graph

13 commits

Author SHA1 Message Date
John Lightner
74ccc1a8ed MAESTRO: Implement Admin page with settings, API keys, stats, and webhook management 2026-04-07 03:34:32 -05:00
John Lightner
32535a92ea MAESTRO: Build ScoreChart component with scatter, bar, and line chart types
Custom SVG-based charts with no external dependencies. Scatter plot for
score vs parameter value, bar chart for top N configs comparison, line
chart for score progression over time. Interactive tooltips, click
callbacks, chart type switching, dark mode support. 30 tests added.
2026-04-07 03:29:17 -05:00
John Lightner
1d3917a44e MAESTRO: Implement Compare page with side-by-side run comparison, config/response diffs, and score overlay
- Two-column run selectors with experiment→run cascading dropdowns and URL state sync
- Config diff with color-coded same/changed/added/removed entries using key-level comparison
- Line-level LCS response diff with added/removed/same highlighting
- Score comparison with overlaid indigo/emerald bars per scorer
- Pick Winner buttons submit human_preference score via API
- Full RunCard detail view for each run side by side
- 15 tests added (5 diff helper unit tests + 10 component integration tests)
- App.test.tsx updated to mock experiments.list for ComparePage route
2026-04-07 03:25:37 -05:00
John Lightner
e6c344d554 MAESTRO: Build RunCard expandable component with scores, prompts, responses, and stage timing
Implements RunCard.tsx with expandable card showing config summary, cache
status badge, score bars, config JSON, per-stage timing breakdown,
collapsible prompt/response sections (with copy button), and metadata footer.
26 tests added, all 310 tests pass.
2026-04-07 03:20:38 -05:00
John Lightner
59f18a11c3 MAESTRO: Extract SteeringControls into standalone component with Fork, Export, and ETA
Extracted inline SteeringControls from LivePage into standalone component.
Added Fork button (modal to clone experiment config), Export Best dropdown
(JSON/YAML/.env download), and estimated time remaining stat. LivePage
updated to import the new component. 33 tests added, all 284 tests pass.
2026-04-07 03:17:47 -05:00
John Lightner
1253994c9e MAESTRO: Extract Activity Timeline into standalone component with filter, auto-scroll, and color-coded events 2026-04-07 03:13:31 -05:00
John Lightner
cf49e9c888 MAESTRO: Extract Leaderboard into standalone component with expand, sort, and animation
Extract the inline LeaderboardTable from LivePage into a standalone
Leaderboard component with click-to-expand detail rows, sortable
columns, smooth slide-in animation for new entries, and a subtle
glow effect on the best run. 29 tests added.
2026-04-07 03:10:08 -05:00
John Lightner
7fc2a2b8c3 MAESTRO: Implement ModelSelector component with endpoint grouping, refresh, and connectivity indicators 2026-04-07 03:00:10 -05:00
John Lightner
f2e6baa56f MAESTRO: Implement PromptEditor component with Jinja2 syntax highlighting, variable sidebar, and preview
Built standalone PromptEditor with transparent-textarea overlay for syntax
highlighting of Jinja2 expressions, statements, and comments. Includes
clickable variable sidebar for insertion and preview panel with sample data
substitution. Integrated into ExperimentPage PipelineStageCard. 27 tests added.
2026-04-07 02:56:48 -05:00
John Lightner
04a96f3dc3 MAESTRO: Implement Projects page with card grid, creation modal, and comprehensive tests 2026-04-07 02:47:24 -05:00
John Lightner
0e6ae49b3c MAESTRO: Implement AuthContext provider with JWT management, session validation, and protected route redirects 2026-04-07 02:38:23 -05:00
John Lightner
060f399789 MAESTRO: Implement Login page with form validation, error handling, and guest access link 2026-04-07 02:35:34 -05:00
John Lightner
1050109777 MAESTRO: Implement Setup page with first-boot admin creation flow
- Full setup form with username, password, confirm password
- Auth detection on mount (redirects if already authenticated)
- Client-side validation (empty username, short password, mismatch)
- Server error handling (409 conflict, network errors)
- Welcoming UI with gradient background, dark mode support
- 9 new tests covering all states and error paths
- Updated App.test.tsx to handle async SetupPage rendering
- Added @testing-library/user-event dependency
2026-04-07 02:34:00 -05:00