Skip to content

feat(cli): label explore charts with shared axes and legends - #1717

Merged
betegon merged 3 commits into
mainfrom
bt/explore-chart-presentation
Oct 30, 2026
Merged

betegon merged 3 commits into
mainfrom
bt/explore-chart-presentation

Conversation

@betegon

@betegon betegon commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

Follow-up to #1693. Explore time-series images now include a value axis, UTC bucket-start labels, and a colored aggregate legend, so each chart carries its own scale and identity.

The axes and legend are extracted from the existing dashboard compositor into a shared renderer used by both commands. Explore keeps its own unit/precision formatting and UTC timestamps. Axes occupy separate pixels from the data, preserving the distinction between null/incomplete gaps and zero/tiny-value ticks.

Charts appear before compact captions containing the interval and relevant warnings. Text already shown by the axes and legend is removed; a full aggregate expression remains below the chart when the legend shortens it, and units remain explicit when the axis does not display them. The query range stays in the header, missing/incomplete values stay in their detail table, and ingestion details follow the results.

If the labels do not fit or the remaining plot width would require averaging buckets, Explore falls back to its full table. JSON, completeness metadata, and per-aggregate scales are unchanged. No new flags or dependencies.

Validation: the tiny-rate and numeric regression cases fail before the fix and pass afterward, including a narrow terminal where the redundant unit previously forced a table fallback. All 32 focused Explore/shared-legend tests pass; the 109-test graphics suite also passed after rebasing onto cadcf27c1. Root pnpm run tsc and pnpm run lint pass. The latest full workspace run passes outside three existing local CLI failures (12,703 CLI tests passed): missing Xcode actool, the musl installer case on macOS, and an issue-linking test. Those files are unchanged from main; the full suite is not green locally.

Terminal capture

Actual Ghostty window at 106 columns × 52 rows, running this PR's Explore formatter with synthetic data. The chart appears first, followed by a compact interval caption, missing/incomplete bucket details, and ingestion information. Axis and legend labels are no longer repeated above the chart.

Real Ghostty terminal at 106 columns by 52 rows showing the compact Explore p95 duration chart, UTC axes, aggregate legend, interval caption, missing and incomplete bucket table, and ingestion footer

@vercel

vercel Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

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

1 Skipped Deployment
Project Deployment Actions Updated
sentry-local Skipped Skipped Oct 30, 2026 9:43am UTC

Request Review

@betegon
betegon marked this pull request as ready for review October 29, 2026 11:27
@betegon
betegon requested a review from BYK October 29, 2026 11:28
@github-actions github-actions Bot added the risk: medium PR risk score: medium label Oct 29, 2026
@betegon
betegon force-pushed the bt/explore-chart-presentation branch from 6d17e92 to a712d3b Compare October 29, 2026 13:02

@BYK BYK left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Overall looks good, that said I think we should not repeat data visible in the legend now (the stuff about p95 for instance) and use the area more efficiently by placing text around the graph rectangle. Or at least make it more dense and after the graph so graph stays as the center of attention?

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Want reviews to match your repository better? Bugbot Learning can learn team-specific rules from PR activity. A team admin can enable Learning in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 1d5a734. Configure here.

@betegon
betegon force-pushed the bt/explore-chart-presentation branch from 1d5a734 to a6e62a9 Compare October 30, 2026 09:00
@betegon
betegon merged commit efc9d6d into main Oct 30, 2026
26 of 27 checks passed
@betegon
betegon deleted the bt/explore-chart-presentation branch October 30, 2026 12:52

This branch was previously deployed

1 inactive deployment
Preview — c8bfc027 Deployed Oct 30, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk: medium PR risk score: medium

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants