Skip to content

Bug-2063430: Add a profile comparison dialog for speedometer3 results - #1080

Draft
mstange wants to merge 1 commit into
mozilla:mainfrom
mstange:profile-comparison
Draft

Bug-2063430: Add a profile comparison dialog for speedometer3 results#1080
mstange wants to merge 1 commit into
mozilla:mainfrom
mstange:profile-comparison

Conversation

@mstange

@mstange mstange commented Aug 13, 2026

Copy link
Copy Markdown

https://bugzilla.mozilla.org/show_bug.cgi?id=2063430

Deploy preview

This lets developers open a profile comparison from PerfCompare. Example comparison

Speedometer3 browsertime tasks upload a compact profile artifact
(public/test_info/profile_speedometer3_compact.jslb.gz). This adds a way
to open two of those profiles side by side in the profiler's
compare-benchmark view, straight from a compare-results row.

Each speedometer3 row gets a new icon button that opens a dialog listing
the base and new runs that actually have a profile artifact. Runs are
sorted by score and annotated with the Taskcluster worker ID, so it's
easy to tell a machine-to-machine difference from a real regression. The
median run on each side is preselected, and each run also links to the
single-profile view in profiler.firefox.com.

To determine eligibility and worker IDs, two Taskcluster queue helpers
are added: fetchTaskArtifacts (list a run's artifacts) and
fetchTaskStatus (per-run worker information).

The compare-benchmark URL currently points at the deploy preview for
firefox-devtools/profiler#6012; there's a TODO to switch it to
profiler.firefox.com once that feature lands in production.

The new button needs a fourth slot in the row's button cell, which the
two test-version column configs sized with a hand-tuned multiplier that
had drifted apart (3.5 vs 2.5 for identical markup). Since the buttons
share one grid cell whose width is fixed per table, while the header and
every row build their own grid, the cell has to reserve room for the most
buttons any single row can show. That count now lives in one place, next
to the components that render the buttons, as a named slot count rather
than a multiplier: see rowButtonSlots.ts. Compare tables reserve four
slots (136px, so Student-T narrows by 17px); subtest tables reserve one.
@netlify

netlify Bot commented Aug 13, 2026

Copy link
Copy Markdown

Deploy Preview for mozilla-perfcompare ready!

Name Link
🔨 Latest commit 984e947
🔍 Latest deploy log https://app.netlify.com/projects/mozilla-perfcompare/deploys/6a7e23e727484500082ed450
😎 Deploy Preview https://deploy-preview-1080--mozilla-perfcompare.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

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.

1 participant