Skip to content

feat(scaling): bench run and load test detail pages - #203

Merged
mw2000 merged 2 commits into
feat/scaling-guardrails-pagefrom
feat/scaling-run-pages
Oct 16, 2026
Merged

mw2000 merged 2 commits into
feat/scaling-guardrails-pagefrom
feat/scaling-run-pages

Conversation

@0x00101010

@0x00101010 0x00101010 commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Why

A base-bench run is split across two old pages (/benchmark/run/<id> and /benchmark/run-comparison/<id>, a wall of ungrouped charts), and a load test leads with a workload-specific swaps/s number. These pages put each run on one page in the scaling style, with Mgas/s as the unit.

What

  • /scaling/runs/bench/<id>: one row per configuration of the benchmark run (an id can cover several), thresholds as a table (metric, value, warning, error, status), per-block charts grouped Build / State root / Persist / Sparse trie / Validate with only Build open and sequencer and validator as two series, raw config, JSON/CSV downloads. Every metric in metricDefinitions.ts is assigned to one group (tested).
  • /scaling/runs/load/<network>/<timestamp>: observed Mgas/s headline with ≈ N tx/s at this mix (gas/s ÷ gas per confirmed tx), target / duration / senders / in-flight inline with the full config behind an info icon, throughput chart, block and Flashblocks latency percentile bars, gas stats, failure reasons, previous/next run.
  • A small SVG line chart in app/scaling/runs/components/ (no new dependency); nothing imported from app/benchmark/components or views. downloadUtils.ts moves to app/scaling/runs/lib/ unchanged.
  • Thresholds keyed with a role prefix (sequencer/latency/get_payload, how report-api writes them) now count toward run status; before, they were skipped, so a breached threshold still read success.
  • Both routes join the CI check that internal-only routes 404 on the public build.

Notes

Screenshots

Internal dev build with report-api responses replaced by the committed synthetic fixture (invented numbers).

/scaling/runs/bench/test-synthetic-1 at 1280 px and 360 px:

bench run at 1280 px
bench run at 360 px

/scaling/runs/load/sepolia/<timestamp> at 1280 px and 360 px, and a run that stopped with a fatal error:

load test at 1280 px
load test at 360 px
fatal load test at 1280 px

Test plan

  • npm test, npm run typecheck, npm run lint, npm run build, npm run build:internal, npm run llms -- --check, npm run agents -- --check
  • BenchRun.test.tsx: configurations, thresholds (role-prefixed one marks its config error), stage order with only Build open, alias-resolved metric, metrics fetch error, every metric in one stage.
  • LoadRun.test.tsx: headline, translation, knobs, chart, latency bars, previous/next, fatal run.
  • Rendered the newest live bench run and Sepolia load test plus the fixtures in dev:internal at 360 px and 1280 px; public build returns 404 for both routes.

0x00101010 and others added 2 commits October 16, 2026 06:46
Co-authored-by: Toshi <toshi-noreply@coinbase.com>
Co-authored-by: Toshi <toshi-noreply@coinbase.com>
@vercel

vercel Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
omni-ui Ready Ready Preview Oct 16, 2026 1:53pm UTC

Request Review

@cb-heimdall

cb-heimdall commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

✅ Heimdall Review Status

Requirement Status More Info
Reviews ✅ 1/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

@mw2000
mw2000 added this pull request to the merge queue Oct 16, 2026
Merged via the queue into main with commit fa0096f Oct 16, 2026
13 checks passed
@mw2000
mw2000 deleted the feat/scaling-run-pages branch October 16, 2026 16:55

This branch was successfully deployed

1 active deployment
Preview — 67147c8e Deployed Oct 16, 2026 by vercel[bot]
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.

3 participants