Skip to content

Composer's running-agents status bar isn't clickable, unlike the main timeline #2315

Description

@technicalpickles

The workflow

While a subagent is running, I want to click a row in the "Running background agent" status card above the composer to jump to that subagent in the main timeline, the same way the main timeline's delegation rows already expand into a full step-by-step view.

What happens today

There are two separate UI surfaces for subagent activity, and only one of them is interactive:

  • The main scrollable timeline (ThreadTimelineRows.tsx / TimelineRowDetails.tsx) renders TimelineDelegationWorkRow items as a real expandable tree backed by the full childRows data model. This one already works: you can expand a running or completed subagent and see its steps.
  • The sticky card above the composer, ThreadBackgroundCommandsCard (apps/app/src/components/promptbox/banner/ThreadBackgroundCommandsCard.tsx), shows a live-updating "Running background agent: +N more" summary with a duration ticker (BackgroundActivityDuration, lines 114-122). The only interactive element is the header button (line 256) that toggles local expand/collapse. The individual rows it reveals (lines 318-362) are plain <div>s: no onClick, no link, no navigation.

The card is fed by activeBackgroundCommands: TimelineWorkflowWorkRow[] (packages/server-contract/src/thread-timeline.ts, workKind: "workflow", lines 463-479), computed in apps/app/src/views/thread-detail/ThreadDetailView.tsx (around line 861). That's a distinct, lighter-weight variant from TimelineDelegationWorkRow (same file, lines 440-450) that powers the main timeline, and it carries no id back-reference to the corresponding timeline row.

Verified against 9375a5495464c16fd9c3d03176add0a1dfca5172 on main by triggering a real Explore subagent and comparing the two screenshots side by side: the inline timeline row was expandable, the composer status card row for the same run was not.

What I would expect

Clicking a row in ThreadBackgroundCommandsCard should scroll to (or open a pane for) the corresponding row in the main timeline, mirroring the click-through this issue's sibling report (subagent transcript access via outputFile) is asking for on the timeline side.

Context and alternatives

The immediate workaround is to scroll up and find the matching row in the main timeline by label, which works but only while the row hasn't scrolled out of the visible history. Fixing this needs TimelineWorkflowWorkRow (or the activeBackgroundCommands projection) to carry a back-reference (e.g. a timelineRowId) to the row it summarizes, plus an onClick in the card that navigates to it.

AGENT GENERATED

Metadata

Metadata

Assignees

No one assigned

    Labels

    uiApp shell, sidebar, composer, rendering

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions