Skip to content

feat: add tooltip for Running status (Closes #7)#77

Open
GalDayan wants to merge 1 commit intomainfrom
issue-7-add-running-tooltip
Open

feat: add tooltip for Running status (Closes #7)#77
GalDayan wants to merge 1 commit intomainfrom
issue-7-add-running-tooltip

Conversation

@GalDayan
Copy link
Copy Markdown
Contributor

Closes #7

Changes

  • Added (i) info icon next to Running status badge
  • Tooltip appears on hover explaining:
    • What "Running" means (active session with recent messages)
    • How it differs from Idle, Completed, and Stopped statuses
    • That status updates automatically from heartbeat

Implementation

  • Uses shadcn/ui tooltip component with base-ui primitives
  • Lucide React Info icon for visual indicator
  • Only shows for "Running" status as requested in the issue
  • Styled to match existing dark theme

Testing

  • ✅ TypeScript compilation passes
  • ✅ ESLint passes (only pre-existing warnings)
  • ✅ Tooltip renders correctly with proper styling

- Add (i) icon next to Running status badge
- Show tooltip explaining what Running means
- Explain how Running differs from Idle, Completed, Stopped
- Note that status updates automatically from heartbeat
- Uses shadcn/ui tooltip component with lucide-react Info icon
Copilot AI review requested due to automatic review settings April 13, 2026 21:38
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds an explanatory tooltip for the Running agent status to address UX confusion (Closes #7), using a new shared tooltip UI component built on Base UI primitives.

Changes:

  • Introduces a reusable Tooltip component wrapper in components/ui.
  • Wraps AgentsTab content in TooltipProvider and renders an info icon + tooltip next to the Running status badge.
  • Adds “Running status” explanatory copy shown on hover.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
frontend/src/components/ui/tooltip.tsx New shared tooltip wrapper around @base-ui/react/tooltip with Tailwind styling and positioning helpers.
frontend/src/app/dashboard/components/AgentsTab.tsx Adds tooltip provider + info icon/tooltip UI shown only when agent.status === "running".

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

{agent.status === "running" && (
<Tooltip>
<TooltipTrigger
render={<span className="inline-flex items-center cursor-help" aria-label="About Running status" />}
Copy link

Copilot AI Apr 13, 2026

Choose a reason for hiding this comment

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

TooltipTrigger is rendered as a <span> via the render prop, which is not keyboard-focusable. This makes the tooltip inaccessible to keyboard users (and the aria-label on a non-interactive element won’t be announced reliably). Consider using the trigger’s default interactive element (if it defaults to a <button>), or render a <button type="button"> (or add tabIndex={0} + appropriate role/keyboard handlers) and ensure it has a visible focus style.

Suggested change
render={<span className="inline-flex items-center cursor-help" aria-label="About Running status" />}
render={
<button
type="button"
className="inline-flex items-center cursor-help rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2"
aria-label="About Running status"
/>
}

Copilot uses AI. Check for mistakes.
Comment on lines +191 to +192
<span className="font-medium">How it differs:</span> &quot;Idle&quot; means no active sessions,
&quot;Completed&quot; means the session finished, and &quot;Stopped&quot; means the agent process isn&apos;t running.
Copy link

Copilot AI Apr 13, 2026

Choose a reason for hiding this comment

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

The tooltip copy references a “Completed” status, but AgentStatus (and the status badges in this list) don’t include a completed state. This is likely to confuse users; consider updating the text to reference the actual agent statuses shown here (e.g., Active/Idle/Paused/Stopped) or explicitly call out that “completed” refers to a session status instead of an agent status.

Suggested change
<span className="font-medium">How it differs:</span> &quot;Idle&quot; means no active sessions,
&quot;Completed&quot; means the session finished, and &quot;Stopped&quot; means the agent process isn&apos;t running.
<span className="font-medium">How it differs:</span> &quot;Paused&quot; means the agent is temporarily halted,
and &quot;Stopped&quot; means the agent process isn&apos;t running.

Copilot uses AI. Check for mistakes.
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.

Add info tooltip explaining 'Running' agent status

2 participants