Skip to content

feat(viewer): browse individual events in a cluster - #1013

Open
krushiraj wants to merge 2 commits into
dial9-rs:mainfrom
krushiraj:codex/events-cluster-browser
Open

krushiraj wants to merge 2 commits into
dial9-rs:mainfrom
krushiraj:codex/events-cluster-browser

Conversation

@krushiraj

Copy link
Copy Markdown
Contributor

Clicking a dense event marker currently shows only the cluster's count, types, and time range. This adds a scrollable member list to the Event inspector so each event can be inspected without zooming until its marker separates.

Selecting a member keeps the cluster list and scroll position, updates the timeline marker and task/poll context, and exposes the existing field copy, correlation, and chart actions. Lists are bounded to 100 events per page. Selecting a different cluster resets the browsing state.

Refs #480. This addresses browsing within a selected cluster; it does not add a list of all trace events or new chart functionality.

Validation:

  • Full Vitest suite, TypeScript checks, import-boundary check, and production UI build.
  • cargo build -p dial9-viewer.
  • Browser checks with the demo trace and a 205-event fixture: member selection, scrolling, pagination, keyboard activation, copying a field, creating a chart, and selection reset.
  • Focused regressions cover equal names/timestamps, missing fields, task/poll resolution, pagination, and unpinning.

No Rust or trace-format changes.

Existing Node localStorage and Vite classic-script/externalization/circular-chunk warnings remain unchanged.

@rcoh

rcoh commented Oct 5, 2026

Copy link
Copy Markdown
Contributor

do you have a screenshot or example video? Clicking on a cluster worked but I wasn't sure how to do the scrollable list you described

@krushiraj

Copy link
Copy Markdown
Contributor Author

do you have a screenshot or example video? Clicking on a cluster worked but I wasn't sure how to do the scrollable list you described

image

I realized the scrollable container styling wasn't proper and had bad UX when you couldn't find it. So made some style changes and probably now its easy to see it.

Steps:

  • Select a dense area in events pane
  • I selected one cluster with 79 events
  • On the right pane now I see the list of all 79 events
  • I click on one of them and I see the data associated with it along with copyable values

Let me know if this looks good. If you had a different idea in your head or if you feel I read the issue wrong please let me know, will make necessary changes.

Thank you.

@rcoh

rcoh commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

hey sorry I can't seem to get this to work. How did you select the area? I shift selected. That then brings the flamegraph up (but it doesn't include spans during that time period).

If I click on a cluster, it jumps to one span in the cluster (which is fine) but I don't see any way to get to the other spans.

(I would say even if, as implemented, there is some way to get this to work and I am doing it wrong, the UX is very unintuitive so we should revisit)

@krushiraj

Copy link
Copy Markdown
Contributor Author
issue-480-events.webm

@rcoh Please take a look at this video. Hopefully, it is clear now and ticks all 3 improvements suggested in #480

I'm just trying to understand if we both are on the same page here. Else please leave any clarifications or comments so that I can revisit and make necessary changes.

Show a persistent scrollbar, inset border, edge shadows and a half-cut
last row so the list reads as scrollable before the first scroll.
@krushiraj
krushiraj force-pushed the codex/events-cluster-browser branch from b8d51b5 to 4f888d2 Compare October 7, 2026 18:17

This branch has not been deployed

No deployments
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