Skip to content

chore(ui): UI fixes#7

Merged
siddhant-galileo merged 12 commits intomainfrom
siddhant/ui-fixes
Feb 3, 2026
Merged

chore(ui): UI fixes#7
siddhant-galileo merged 12 commits intomainfrom
siddhant/ui-fixes

Conversation

@siddhant-galileo
Copy link
Collaborator

@siddhant-galileo siddhant-galileo commented Feb 1, 2026

What Changed

URL-Based Search & Navigation

  • Added useQueryParam hook to sync search state with URL query parameters
  • Created reusable SearchInput component with clear button and URL sync
  • Implemented server-side search for agents and controls with debouncing
  • Search state persists in URL (shareable links, browser back/forward support)
  • Control Store modal clears search query param on close
  • "Used by" links in Control Store navigate to agent detail with control name filter in URL

Sticky Table Headers

  • All tables now have sticky headers that remain visible while scrolling
  • Applied to: agents overview, control store, add control modal, and agent detail controls tab
  • Removed ScrollArea wrappers in favor of table's native scrolling with maxHeight prop

Monitoring Page Improvements

  • Upgraded to Jupiter DS v0.0.6 and replaced date picker with TimeRangeSwitch component
  • Renamed "Stats" tab to "Monitoring" and agent-stats.tsx to agents-monitoring.tsx
  • Improved time range selection UX with segment buttons and dropdown menu

Code Quality & Refactoring

  • Refactored all evaluator forms (JSON, List, Luna2, Regex, SQL) for better maintainability
  • Created reusable LabelWithTooltip and StepNameInput components
  • Improved control definition form structure and validation
  • Added infinite scroll hooks (useInfiniteScroll, useControlsInfinite, useAgentsInfinite)
  • Server-side search implementation for agents and controls lists

Technical Updates

  • Added webpack configuration to handle CSS imports from Jupiter DS
  • Updated dependencies (@rungalileo/jupiter-ds@0.0.6, @emotion/is-prop-valid)
  • Added DatesProvider to _app.tsx for Mantine date components
  • Fixed TypeScript/lint errors and updated all tests

Testing

✅ All tests passing (84 integration tests, lint, TypeScript)

@codecov
Copy link

codecov bot commented Feb 1, 2026

The author of this PR, siddhant-galileo, is not an activated member of this organization on Codecov.
Please activate this user on Codecov to display this PR comment.
Coverage data is still being uploaded to Codecov.io for purposes of overall coverage calculations.
Please don't hesitate to email us at support@codecov.io with any questions.

@siddhant-galileo siddhant-galileo changed the title UI fixes chore(ui): UI fixes Feb 1, 2026
Copy link
Collaborator

@abhinav-galileo abhinav-galileo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Issues (Prioritized)

High

  1. Commented-out code - agent-detail.tsx:2551-2555 and agent-detail.tsx:2514 (// color='violet') - remove before merge

  2. Complex DOM querying in control-store (modals/control-store/index.tsx:117-143) - fragile scroll container attachment relies on class name selectors that could break

  3. Initial tab redirect causes flash (agent-detail.tsx:83-111) - redirects after render if stats exist, jarring UX

Medium

  1. Magic strings for modal/submodal names - "control-store", "create", "add-new", "edit" scattered throughout - use constants

  2. Inconsistent close behavior (use-modal-route.ts:98-121) - closeSubmodal from "create" goes to "add-new", but from other submodals closes entirely - may confuse users

  3. Missing dep in useEffect (agent-detail.tsx:147-156) - selectedControl not in dependency array, potential stale closure

Low

  1. Unused destructured variables (use-modal-route.ts:99) - _evaluator and _controlId extracted but unused, could simplify

  2. No tests for useModalRoute - new hook with navigation logic has no test coverage

@siddhant-galileo siddhant-galileo merged commit 8e40b57 into main Feb 3, 2026
5 checks passed
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