Skip to content

replace renderBubbles with renderLiveContext in Live panel#527

Merged
JeremyDev87 merged 1 commit intomasterfrom
fix/tui-live-panel-render-live-context
Feb 17, 2026
Merged

replace renderBubbles with renderLiveContext in Live panel#527
JeremyDev87 merged 1 commit intomasterfrom
fix/tui-live-panel-render-live-context

Conversation

@JeremyDev87
Copy link
Owner

Summary

Closes #502

The TUI Live panel showed almost no data due to three root causes:

  • status: 'active' was never produced by the event system, so renderBubbles found no active calls
  • A 30-second time window was too restrictive, causing the panel to appear empty most of the time
  • No contextual information (mode, agent names) was displayed

This PR replaces renderBubbles with renderLiveContext using a delete-insert pattern that:

  • Always displays content regardless of call status or age
  • Shows current workflow mode (PLAN/ACT/EVAL/AUTO)
  • Displays agent context alongside tool names
  • Uses age indicators: (hot <5s), (recent <30s), · (older)
  • Deduplicates tool names, showing the most recent occurrence
  • Filters out error-status calls

Changes

  • activity-visualizer.pure.ts: Replace renderBubbles with renderLiveContext, add Mode type, use derived constants (LIVE_HOT_SEC, LIVE_RECENT_SEC)
  • ActivityVisualizer.tsx: Add currentMode prop, rename bubblesWidthlivePanelWidth, wire renderLiveContext
  • dashboard-app.tsx: Pass state.currentMode to ActivityVisualizer
  • index.ts: Update re-export from renderBubbles to renderLiveContext
  • activity-visualizer.pure.spec.ts: Replace renderBubbles test suite with 15 renderLiveContext tests, use estimateDisplayWidth for width assertions
  • ActivityVisualizer.spec.tsx: Update all tests with currentMode prop, add mode display test

Test plan

  • All 3778 tests pass (164 test files)
  • TypeScript build succeeds with zero errors
  • Live panel always shows content (no empty panel)
  • Mode display works when mode is set
  • Agent context shown for non-unknown agents
  • Age indicators render correctly based on call age
  • Width truncation uses estimateDisplayWidth for multi-byte correctness

…502)

The Live panel showed almost no data because renderBubbles depended on
status:'active' (never produced by the event system) and a 30s time
window that was too restrictive. Replace it with renderLiveContext which
always displays content with mode context, agent names, age indicators,
and no time-window filtering.
@vercel
Copy link

vercel bot commented Feb 17, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
codingbuddy-landing Ready Ready Preview, Comment Feb 17, 2026 6:09pm

@JeremyDev87 JeremyDev87 self-assigned this Feb 17, 2026
@JeremyDev87 JeremyDev87 added fix tui TUI Agent Monitor labels Feb 17, 2026
@JeremyDev87 JeremyDev87 changed the title fix(tui): replace renderBubbles with renderLiveContext in Live panel replace renderBubbles with renderLiveContext in Live panel Feb 17, 2026
@JeremyDev87 JeremyDev87 merged commit 47b1414 into master Feb 17, 2026
47 of 48 checks passed
@JeremyDev87 JeremyDev87 deleted the fix/tui-live-panel-render-live-context branch February 17, 2026 18:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

fix tui TUI Agent Monitor

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(tui): Live panel shows almost no data — status:'active' never produced and 30s window too restrictive

1 participant