github →

New request

#2403: Interim assistant progress notes — consider collapsing or capping on long tool-heavy turns

We'll provision a sandbox, run an agent against the issue, and open a draft PR. You can pull the branch and iterate from there.

Issue
enhancement

Follow-up captured during stage-369 Opus advisor review of PR #2347 (shipped in v0.51.76).

Observation

PR #2347 reworked the live interim_assistant accumulation path to join successive snippets with \n\n instead of raw concatenation. This was deliberate — visible progress notes from the model are now separate sentences and need at least a paragraph break to be readable in the live timeline.

The trade-off: a long-running tool-heavy turn with 6+ interim progress notes now consumes more vertical space in the timeline pane than the pre-fix raw-concat version. On a 14-inch laptop or smaller, this can scroll the final answer off-screen by the time the turn completes.

Why this is a follow-up, not a regression

  • The new behavior is correct per the live-timeline contract from PR #2390 (consecutive progress notes ARE supposed to be separate paragraphs).
  • The previous behavior was buggy in a different direction — interim notes ran together into an unreadable wall.
  • Only sessions with many interim notes (10+) on small viewports exhibit the layout pressure.

Possible UX directions

Not committing to one — needs observation of real sessions:

  1. Collapse old progress notes once they're more than ~3 ahead of the live cursor, with a "show all" expand. Mirrors how Thinking cards already collapse.
  2. Tighten the \n\n separator to \n when the surrounding context is a tool burst (Activity group), since the Activity row provides the visual boundary already.
  3. Cap visible progress count to N (e.g. 5) with the oldest collapsing into a "+ N earlier progress notes" summary line.
  4. Do nothing — the trade-off is the right call. The new readability is worth the vertical space.

When to act

After running real long sessions for a few days and seeing whether the layout pressure actually bites. If multiple users report "I can't see the answer anymore" then option 1 or 3 is the right call. If nobody mentions it, option 4.

References

Assessmentadvisory
feature●● medium85% confidence

Frontend UX enhancement requiring chat timeline rendering, dynamic collapse behavior, and activity-group-aware layout adjustments.

Likely files
  • static/js/chat/timeline.js
  • static/css/chat.css
  • static/js/ui/collapse.js
  • static/js/components/activity_group.js
  • api/models/sessions.py
Create the request

This opens a fresh agent run and a draft PR for issue #2403.

Cancel