Skip to content

fix(perps): fix padding issue on extension market detail page#43350

Open
abretonc7s wants to merge 5 commits into
mainfrom
TAT-3264-fix-fix-orders-section-spacing
Open

fix(perps): fix padding issue on extension market detail page#43350
abretonc7s wants to merge 5 commits into
mainfrom
TAT-3264-fix-fix-orders-section-spacing

Conversation

@abretonc7s

@abretonc7s abretonc7s commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Description

On the perps market detail page (/perps/market/:symbol), the Orders section heading was missing the 16px top spacing that every other adjacent section heading on the page uses (Stats, Recent Activity, Details), so it sat flush against the preceding block.

This adds paddingTop={4} to the orders section heading wrapper so it reuses the same section-spacing token as the other section blocks, rather than a one-off value. The orders section already renders only when there are open orders, so the empty state is unaffected.

Changelog

CHANGELOG entry: Fixed inconsistent spacing above the orders section on the perps market detail page.

Related issues

Fixes: TAT-3264

Manual testing steps

  1. Unlock the wallet and open the Perps tab.
  2. Open the market list and click a market to open its detail page.
  3. Place a limit order on that market so the orders section renders.
  4. Locate the "Orders" section heading on the market detail page.
  5. Confirm the vertical gap above "Orders" equals the gap above "Stats" (16px) — they now match.
  6. Cancel the order: confirm the orders section no longer renders and the remaining sections keep their spacing.

Screenshots/Recordings

Orders section header now uses the same 16px top spacing as the other market-detail sections; empty state still renders no orders section. Screenshots are real macOS window captures (capture-helper).

Market detail — orders section top spacing (0px → 16px, matches Stats) — Before: the 'Orders' heading sits flush under the chart block. After: it has the conventional 16px gap above it, matching the 'Stats' heading.
Before
before
After
after
Market detail — empty state (no open orders, orders section not rendered)
Market detail — empty state (no open orders, orders section not rendered)

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Validation Recipe

recipe.json
{
  "schema_version": 1,
  "title": "TAT-3264 — perps market detail orders section top spacing",
  "description": "Proves the orders section header on the extension perps market detail page uses the same top spacing token (paddingTop=16px) as the stats section header, and that with no open orders the orders section does not render. Builds real testnet order state through the order-entry UI.",
  "pre_conditions": [
    "Wallet fixture present and unlockable",
    "Account 1 (0x8dc623…9003) funded for Hyperliquid testnet perps"
  ],
  "validate": {
    "workflow": {
      "entry": "setup-status",
      "nodes": {
        "setup-status": { "action": "app.status", "flow": "setup", "intent": "Read runner compatibility status", "next": "setup-unlock" },
        "setup-unlock": { "action": "metamask.wallet.ensure_unlocked", "flow": "setup", "intent": "Ensure wallet is unlocked", "next": "setup-select" },
        "setup-select": { "action": "metamask.wallet.select_account", "address": "0x8dc623e964475d4d669da601fd15ea9125469003", "flow": "setup", "intent": "Select the funded validation account", "next": "setup-clean" },
        "setup-clean": { "action": "metamask.perps.start_state", "profile": "clean_market_testnet", "network": "testnet", "market": "ETH", "positions": false, "orders": false, "page": "market", "timeout_ms": 60000, "flow": "setup", "intent": "Switch to testnet and open the ETH market (explicit order cleanup happens below)", "next": "setup-reload-a" },
        "setup-reload-a": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/reload-market.mjs '#/perps/market/ETH' '[data-testid=\"perps-stats-section-header\"]' 7665", "flow": "setup", "intent": "Reload the market detail after the testnet switch so the perps context is active", "next": "setup-close" },
        "setup-close": { "action": "metamask.perps.close_orders", "market": "ETH", "timeout_ms": 90000, "flow": "setup", "intent": "Cancel any leftover orders from the market page (reliable cancel context)", "next": "setup-wait-absent" },
        "setup-wait-absent": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/wait-orders-absent.mjs ETH 60000 7665", "flow": "setup", "intent": "Poll the live orders cache until zero ETH orders remain", "next": "setup-reload-b" },
        "setup-reload-b": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/reload-market.mjs '#/perps/market/ETH' '[data-testid=\"perps-stats-section-header\"]' 7665", "flow": "setup", "intent": "Reload again so the DOM reflects the confirmed empty-orders state", "next": "setup-wait-market" },
        "setup-wait-market": { "action": "ui.wait_for", "selector": "[data-testid=\"perps-stats-section-header\"]", "visible": true, "timeout_ms": 20000, "flow": "setup", "intent": "Wait for the market detail to render", "next": "ac2-measure-empty" },

        "ac2-measure-empty": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/measure-spacing.mjs temp/tasks/fix/tat-3264-0608-143758/artifacts/recipe-run/measure-empty.json 7665", "flow": "ac2", "intent": "Measure section state with no open orders", "next": "ac2-assert-rendered" },
        "ac2-assert-rendered": { "action": "assert_json", "path": "temp/tasks/fix/tat-3264-0608-143758/artifacts/recipe-run/measure-empty.json", "assert": { "path": "$.statsExists", "operator": "eq", "value": true }, "flow": "ac2", "intent": "Market detail is rendered (stats section present)", "next": "ac2-assert-absent" },
        "ac2-assert-absent": { "action": "assert_json", "path": "temp/tasks/fix/tat-3264-0608-143758/artifacts/recipe-run/measure-empty.json", "assert": { "path": "$.ordersExists", "operator": "eq", "value": false }, "flow": "ac2", "intent": "With no open orders the orders section header is absent (no regression to empty state)", "next": "ac2-focus" },
        "ac2-focus": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/focus-market.mjs 7665", "flow": "ac2", "intent": "Bring the market detail tab to the foreground for the screenshot", "next": "ac2-screenshot-empty" },
        "ac2-screenshot-empty": { "action": "ui.screenshot", "path": "screenshots/evidence-ac2-empty-state.png", "timeout_ms": 5000, "flow": "ac2", "intent": "Capture empty-state market detail (orders section not rendered)", "note": "AC2: no open orders — orders section does not render", "claims": { "must_show": ["Stats"], "must_not_show": ["Orders"] }, "next": "ac1-nav-trade" },

        "ac1-nav-trade": { "action": "ui.navigate", "hash": "#/perps/trade/ETH?direction=long&mode=new", "flow": "ac1", "intent": "Open the order entry page to place a resting limit order", "next": "ac1-wait-entry" },
        "ac1-wait-entry": { "action": "ui.wait_for", "selector": "[data-testid=\"perps-order-entry-page\"]", "visible": true, "timeout_ms": 30000, "flow": "ac1", "intent": "Wait for the order entry page", "next": "ac1-place-order" },
        "ac1-place-order": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/place-limit-order.mjs ETH 1600 12 7665", "flow": "ac1", "intent": "Switch to Limit, fill price/size into the real React inputs, click the real submit button, and confirm the order rests (retried for testnet flakiness)", "next": "ac1-assert-order" },
        "ac1-assert-order": { "action": "metamask.perps.assert_orders", "market": "ETH", "state": "open", "mode": "matching", "timeout_ms": 45000, "flow": "ac1", "intent": "Wait for and confirm the real open order before leaving the trade page", "next": "ac1-nav-market" },
        "ac1-nav-market": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/reload-market.mjs '#/perps/market/ETH' '[data-testid=\"perps-orders-section-header\"]' 7665", "flow": "ac1", "intent": "Open the market detail fresh (reload) so the orders section renders reliably", "next": "ac1-wait-stats" },
        "ac1-wait-stats": { "action": "ui.wait_for", "selector": "[data-testid=\"perps-stats-section-header\"]", "visible": true, "timeout_ms": 15000, "flow": "ac1", "intent": "Wait for the market detail to render (stats header present)", "next": "ac1-wait-orders" },
        "ac1-wait-orders": { "action": "ui.wait_for", "selector": "[data-testid=\"perps-orders-section-header\"]", "visible": true, "visibility": "viewport", "timeout_ms": 15000, "flow": "ac1", "intent": "Wait for the orders section header to be visible", "next": "ac1-scroll-orders" },
        "ac1-scroll-orders": { "action": "ui.scroll", "selector": "[data-testid=\"perps-orders-section-header\"]", "scroll_into_view": true, "flow": "ac1", "intent": "Bring the orders section header into view", "next": "ac1-measure" },
        "ac1-measure": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/measure-spacing.mjs temp/tasks/fix/tat-3264-0608-143758/artifacts/recipe-run/measure-orders.json 7665", "flow": "ac1", "intent": "Measure orders vs stats header top padding via getComputedStyle + getBoundingClientRect", "next": "ac1-assert-padding" },
        "ac1-assert-padding": { "action": "assert_json", "path": "temp/tasks/fix/tat-3264-0608-143758/artifacts/recipe-run/measure-orders.json", "assert": { "path": "$.ordersPaddingTopPx", "operator": "eq", "value": 16 }, "flow": "ac1", "intent": "Orders header top padding equals the 16px section spacing token", "next": "ac1-assert-match" },
        "ac1-assert-match": { "action": "assert_json", "path": "temp/tasks/fix/tat-3264-0608-143758/artifacts/recipe-run/measure-orders.json", "assert": { "path": "$.match", "operator": "eq", "value": true }, "flow": "ac1", "intent": "Orders header top padding equals the stats header top padding (same spacing convention)", "next": "ac1-focus" },
        "ac1-focus": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/focus-market.mjs 7665", "flow": "ac1", "intent": "Bring the market detail tab to the foreground for the screenshot", "next": "ac1-screenshot-orders" },
        "ac1-screenshot-orders": { "action": "ui.screenshot", "path": "screenshots/evidence-ac1-orders-spacing.png", "timeout_ms": 5000, "flow": "ac1", "intent": "Capture the orders section with correct top spacing", "note": "AC1: orders section top spacing matches adjacent sections (16px)", "claims": { "must_show": ["Orders", "Stats"], "must_not_show": [] }, "next": "teardown-nav-market" },

        "teardown-nav-market": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/reload-market.mjs '#/perps/market/ETH' '[data-testid=\"perps-stats-section-header\"]' 7665", "flow": "teardown", "intent": "Ensure the market detail is active before cancelling the order", "next": "teardown-close" },
        "teardown-close": { "action": "metamask.perps.close_orders", "market": "ETH", "timeout_ms": 90000, "flow": "teardown", "intent": "Cancel the testnet limit order created by this recipe", "next": "teardown-wait-absent" },
        "teardown-wait-absent": { "action": "command", "cmd": "node temp/tasks/fix/tat-3264-0608-143758/artifacts/wait-orders-absent.mjs ETH 60000 7665", "flow": "teardown", "intent": "Poll the live orders cache until zero ETH orders remain", "next": "teardown-state" },
        "teardown-state": { "action": "metamask.perps.teardown_state", "market": "ETH", "positions": false, "orders": false, "page": "home", "timeout_ms": 60000, "flow": "teardown", "intent": "Return to the wallet home (order cleanup already done above)", "next": "teardown-done" },
        "teardown-done": { "action": "end", "status": "pass", "flow": "complete", "intent": "Recipe passed: orders section spacing matches convention" }
      }
    }
  }
}

Recipe Workflow

workflow.mmd
flowchart TD
  setup-status["setup-status"] --> setup-unlock["setup-unlock"]
  setup-unlock["setup-unlock"] --> setup-select["setup-select"]
  setup-select["setup-select"] --> setup-clean["setup-clean"]
  setup-clean["setup-clean"] --> setup-reload-a["setup-reload-a"]
  setup-reload-a["setup-reload-a"] --> setup-close["setup-close"]
  setup-close["setup-close"] --> setup-wait-absent["setup-wait-absent"]
  setup-wait-absent["setup-wait-absent"] --> setup-reload-b["setup-reload-b"]
  setup-reload-b["setup-reload-b"] --> setup-wait-market["setup-wait-market"]
  setup-wait-market["setup-wait-market"] --> ac2-measure-empty["ac2-measure-empty"]
  ac2-measure-empty["ac2-measure-empty"] --> ac2-assert-rendered["ac2-assert-rendered"]
  ac2-assert-rendered["ac2-assert-rendered"] --> ac2-assert-absent["ac2-assert-absent"]
  ac2-assert-absent["ac2-assert-absent"] --> ac2-focus["ac2-focus"]
  ac2-focus["ac2-focus"] --> ac2-screenshot-empty["ac2-screenshot-empty"]
  ac2-screenshot-empty["ac2-screenshot-empty"] --> ac1-nav-trade["ac1-nav-trade"]
  ac1-nav-trade["ac1-nav-trade"] --> ac1-wait-entry["ac1-wait-entry"]
  ac1-wait-entry["ac1-wait-entry"] --> ac1-place-order["ac1-place-order"]
  ac1-place-order["ac1-place-order"] --> ac1-assert-order["ac1-assert-order"]
  ac1-assert-order["ac1-assert-order"] --> ac1-nav-market["ac1-nav-market"]
  ac1-nav-market["ac1-nav-market"] --> ac1-wait-stats["ac1-wait-stats"]
  ac1-wait-stats["ac1-wait-stats"] --> ac1-wait-orders["ac1-wait-orders"]
  ac1-wait-orders["ac1-wait-orders"] --> ac1-scroll-orders["ac1-scroll-orders"]
  ac1-scroll-orders["ac1-scroll-orders"] --> ac1-measure["ac1-measure"]
  ac1-measure["ac1-measure"] --> ac1-assert-padding["ac1-assert-padding"]
  ac1-assert-padding["ac1-assert-padding"] --> ac1-assert-match["ac1-assert-match"]
  ac1-assert-match["ac1-assert-match"] --> ac1-focus["ac1-focus"]
  ac1-focus["ac1-focus"] --> ac1-screenshot-orders["ac1-screenshot-orders"]
  ac1-screenshot-orders["ac1-screenshot-orders"] --> teardown-nav-market["teardown-nav-market"]
  teardown-nav-market["teardown-nav-market"] --> teardown-close["teardown-close"]
  teardown-close["teardown-close"] --> teardown-wait-absent["teardown-wait-absent"]
  teardown-wait-absent["teardown-wait-absent"] --> teardown-state["teardown-state"]
  teardown-state["teardown-state"] --> teardown-done["teardown-done"]
  teardown-done["teardown-done"]

Loading

Note

Low Risk
Visual-only spacing and test hooks on the perps market detail page; no trading, auth, or data logic changes.

Overview
Fixes TAT-3264 by giving the perps market detail Orders heading the same top section spacing as Stats and other blocks.

The orders header wrapper now uses paddingTop={4} (16px / pt-4) in addition to the existing bottom padding, so it no longer sits flush under the chart or position content. data-testid hooks were added on the orders and stats section headers for layout checks.

Unit tests assert orders and stats headers both have pt-4, and that with no open orders the orders block (and its header) still does not render.

Reviewed by Cursor Bugbot for commit dd0f64f. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@mm-token-exchange-service mm-token-exchange-service Bot added the team-perps Perps team label Jun 9, 2026
@mm-token-exchange-service

mm-token-exchange-service Bot commented Jun 9, 2026

Copy link
Copy Markdown

✨ Files requiring CODEOWNER review ✨

👨‍🔧 @MetaMask/perps (2 files, +48 -2)
  • 📁 ui/
    • 📁 pages/
      • 📁 perps/
        • 📄 perps-market-detail-page.test.tsx +38 -0
        • 📄 perps-market-detail-page.tsx +10 -2

@abretonc7s

Copy link
Copy Markdown
Contributor Author
Run Duration Model Nudges Grade Cost
5cc0471f (fix-bug, TAT-3264) ? opus / claude 0 2 / low $unknown
Worker report

TAT-3264 — Fix padding above orders section on extension market detail page

Summary

On the perps market detail page (/perps/market/:symbol), the "Orders" section heading was missing the 16px top spacing that every other adjacent section heading on the page uses, so it sat flush against the preceding block. Added paddingTop={4} to the orders heading wrapper so it matches the page's section-spacing convention.

Root cause

ui/pages/perps/perps-market-detail-page.tsx:1558. The page stacks section blocks (Position, Orders, Stats, Recent Activity); each heading wrapper Box carries paddingTop={4} (16px) to separate it from the preceding block — Stats (line 1584), Recent Activity (line 1755), and Details (line 1432) all do. The Orders heading wrapper alone was <Box paddingBottom={2}> with no paddingTop. Confirmed live via getComputedStyle: orders header paddingTop = 0px vs stats header 16px.

Changes

  • ui/pages/perps/perps-market-detail-page.tsx — add paddingTop={4} to the orders section heading wrapper; add data-testid to the orders and stats section headers (locator-only, committed separately) to make the spacing measurable.
  • ui/pages/perps/perps-market-detail-page.test.tsx — add orders section spacing (TAT-3264) tests: (1) the orders header has the same pt-4 top-spacing class as the stats header; (2) with no open orders the orders section does not render while the rest of the page does (empty-state, no regression).

Test plan

Automated:

  • yarn jest ui/pages/perps/perps-market-detail-page.test.tsx --no-coverage → 86 passed.
  • CI-parity gate: yarn lint:changed = 0, yarn verify-locales --quiet = 0, yarn circular-deps:check = 0.
  • Coverage: coverage-analyze.js → VERDICT PASS (file 87%, >= 80%).
  • Validation recipe (live extension, Hyperliquid testnet) — recipe.json, 18/18 ac* nodes passed. Measured orders header paddingTop: buggy 0px (recipe-baseline.json) → fixed 16px, and equals the stats header (match false → true). Reverting the fix flips ac1-assert-padding/ac1-assert-match to FAIL.
  • Bundled validation sub-flows are included as recipe artifacts rather than expanded inline.

Manual (Gherkin):

  • Given the wallet is unlocked on the perps tab with an open limit order on a market,
    When the market detail page renders the orders section,
    Then the vertical gap above the "Orders" heading equals the gap above the "Stats" heading (16px).
  • Given the market has no open orders,
    When the market detail page renders,
    Then the orders section does not render and the remaining sections keep their spacing.

Evidence

Primary visual evidence is real macOS window captures via capture-helper snapshot (the earlier ui.screenshot images were the runner's extension-dom-raster fallback and rendered with overlapping text — superseded):

  • before-capture-helper-ac1-orders-spacing.png / after-capture-helper-ac1-orders-spacing.png — orders section top spacing, 0px → 16px (Orders flush vs. matching the Stats gap).
  • after-capture-helper-ac2-empty-state.png (+ before-capture-helper-ac2-empty-state.png) — empty state, no orders section.
  • Capture-helper recipes: recipe-capture-helper.json (after), recipe-baseline-capture-helper.json (before); runs under capture-helper-run/, baseline-capture-helper-run/.
  • Measurement/coverage: recipe.json, recipe-baseline.json, recipe-run/trace.json, recipe-run/measure-orders.json, recipe-run/measure-empty.json, recipe-coverage.md, recipe-quality.json, evidence-manifest.json.
  • Video could not be recorded: capture-helper/ffmpeg cannot record in this SSH environment (Screen Recording TCC for the launcher). Still-image real-window captures are the primary visual evidence.

Ticket

@github-actions github-actions Bot added the size-S label Jun 9, 2026
@abretonc7s

Copy link
Copy Markdown
Contributor Author
Run Duration Model Nudges Grade Cost
5cc0471f ? opus / claude 0 low — 2 $unknown
Worker report

TAT-3264 — Fix padding above orders section on extension market detail page

Summary

On the perps market detail page (/perps/market/:symbol), the "Orders" section heading was missing the 16px top spacing that every other adjacent section heading on the page uses, so it sat flush against the preceding block. Added paddingTop={4} to the orders heading wrapper so it matches the page's section-spacing convention.

Root cause

ui/pages/perps/perps-market-detail-page.tsx:1558. The page stacks section blocks (Position, Orders, Stats, Recent Activity); each heading wrapper Box carries paddingTop={4} (16px) to separate it from the preceding block — Stats (line 1584), Recent Activity (line 1755), and Details (line 1432) all do. The Orders heading wrapper alone was <Box paddingBottom={2}> with no paddingTop. Confirmed live via getComputedStyle: orders header paddingTop = 0px vs stats header 16px.

Changes

  • ui/pages/perps/perps-market-detail-page.tsx — add paddingTop={4} to the orders section heading wrapper; add data-testid to the orders and stats section headers (locator-only, committed separately) to make the spacing measurable.
  • ui/pages/perps/perps-market-detail-page.test.tsx — add orders section spacing (TAT-3264) tests: (1) the orders header has the same pt-4 top-spacing class as the stats header; (2) with no open orders the orders section does not render while the rest of the page does (empty-state, no regression).

Test plan

Automated:

  • yarn jest ui/pages/perps/perps-market-detail-page.test.tsx --no-coverage → 86 passed.
  • CI-parity gate: yarn lint:changed = 0, yarn verify-locales --quiet = 0, yarn circular-deps:check = 0.
  • Coverage: coverage-analyze.js → VERDICT PASS (file 87%, >= 80%).
  • Validation recipe (live extension, Hyperliquid testnet) — recipe.json, 18/18 ac* nodes passed. Measured orders header paddingTop: buggy 0px (recipe-baseline.json) → fixed 16px, and equals the stats header (match false → true). Reverting the fix flips ac1-assert-padding/ac1-assert-match to FAIL.

Manual (Gherkin):

  • Given the wallet is unlocked on the perps tab with an open limit order on a market,
    When the market detail page renders the orders section,
    Then the vertical gap above the "Orders" heading equals the gap above the "Stats" heading (16px).
  • Given the market has no open orders,
    When the market detail page renders,
    Then the orders section does not render and the remaining sections keep their spacing.

Evidence

Primary visual evidence is real macOS window captures via capture-helper snapshot (the earlier ui.screenshot images were the runner's extension-dom-raster fallback and rendered with overlapping text — superseded):

  • before-capture-helper-ac1-orders-spacing.png / after-capture-helper-ac1-orders-spacing.png — orders section top spacing, 0px → 16px (Orders flush vs. matching the Stats gap).
  • after-capture-helper-ac2-empty-state.png (+ before-capture-helper-ac2-empty-state.png) — empty state, no orders section.
  • Capture-helper recipes: recipe-capture-helper.json (after), recipe-baseline-capture-helper.json (before); runs under capture-helper-run/, baseline-capture-helper-run/.
  • Measurement/coverage: recipe.json, recipe-baseline.json, recipe-run/trace.json, recipe-run/measure-orders.json, recipe-run/measure-empty.json, recipe-coverage.md, recipe-quality.json, evidence-manifest.json.
  • Video could not be recorded: capture-helper/ffmpeg cannot record in this SSH environment (Screen Recording TCC for the launcher). Still-image real-window captures are the primary visual evidence.

Ticket

@abretonc7s abretonc7s changed the title chore: prepare farmslot publication pkg-5cc0471f-mq51uh8m fix(perps): fix padding issue on extension market detail page Jun 9, 2026
@abretonc7s abretonc7s marked this pull request as ready for review June 9, 2026 01:21
@abretonc7s abretonc7s requested a review from a team as a code owner June 9, 2026 01:21
@metamaskbotv2

metamaskbotv2 Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor
Builds ready [42536e7]
Deprecated Browserify fallback builds
⚡ Performance Benchmarks (Total: 🟢 20 pass · 🟡 5 warn · 🔴 0 fail)

Baseline (latest main): 51036da | Date: 5/2/2026 | Pipeline: 27177207796 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-webpackfirefox-webpack
loadNewAccount
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
confirmTx
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
bridgeUserActions
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • loadNewAccount/load_new_account: -55%
  • loadNewAccount/total: -55%
  • bridgeUserActions/bridge_load_page: -72%
  • bridgeUserActions/bridge_load_asset_picker: -54%
  • bridgeUserActions/bridge_search_token: -31%
  • bridgeUserActions/total: -43%
  • loadNewAccount/load_new_account: -51%
  • loadNewAccount/total: -51%
  • bridgeUserActions/bridge_load_page: -25%
  • bridgeUserActions/bridge_load_asset_picker: -45%
  • bridgeUserActions/bridge_search_token: -31%
  • bridgeUserActions/total: -29%
Startup Benchmarks · Samples: 100
Benchmarkchrome-webpackfirefox-webpack
startupStandardHome
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
startupPowerUserHome
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/uiStartup: -23%
  • startupStandardHome/load: -25%
  • startupStandardHome/domContentLoaded: -25%
  • startupStandardHome/domInteractive: -42%
  • startupStandardHome/firstPaint: -15%
  • startupStandardHome/backgroundConnect: -15%
  • startupStandardHome/loadScripts: -25%
  • startupStandardHome/setupStore: -14%
  • startupStandardHome/numNetworkReqs: -67%
  • startupPowerUserHome/uiStartup: -30%
  • startupPowerUserHome/load: -11%
  • startupPowerUserHome/domContentLoaded: -11%
  • startupPowerUserHome/domInteractive: -37%
  • startupPowerUserHome/firstPaint: -27%
  • startupPowerUserHome/backgroundConnect: -62%
  • startupPowerUserHome/firstReactRender: +32%
  • startupPowerUserHome/loadScripts: -11%
  • startupPowerUserHome/setupStore: +54%
  • startupPowerUserHome/numNetworkReqs: -72%
  • startupStandardHome/domInteractive: -55%
  • startupStandardHome/backgroundConnect: +21%
  • startupStandardHome/firstReactRender: +39%
  • startupStandardHome/initialActions: +20%
  • startupStandardHome/setupStore: -54%
  • startupStandardHome/numNetworkReqs: -37%
  • startupPowerUserHome/uiStartup: -30%
  • startupPowerUserHome/domInteractive: -49%
  • startupPowerUserHome/backgroundConnect: -72%
  • startupPowerUserHome/firstReactRender: +41%
  • startupPowerUserHome/setupStore: -33%
  • startupPowerUserHome/numNetworkReqs: -73%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🔴 startupPowerUserHome/INP: p75 584ms
  • 🟡 startupPowerUserHome/LCP: p75 2.8s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-webpackfirefox-webpack
onboardingImportWallet
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
onboardingNewWallet
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
🟡 total
assetDetails
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
solanaAssetDetails
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
importSrpHome
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
sendTransactions
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]
swap
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/srpButtonToSrpForm: -63%
  • onboardingImportWallet/pwFormToMetricsScreen: +538%
  • onboardingImportWallet/doneButtonToHomeScreen: -64%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: -22%
  • onboardingImportWallet/total: -43%
  • onboardingNewWallet/srpButtonToPwForm: -77%
  • onboardingNewWallet/createPwToRecoveryScreen: +1106%
  • onboardingNewWallet/skipBackupToMetricsScreen: -66%
  • assetDetails/assetClickToPriceChart: -61%
  • assetDetails/total: -61%
  • solanaAssetDetails/assetClickToPriceChart: -85%
  • solanaAssetDetails/total: -85%
  • importSrpHome/loginToHomeScreen: -29%
  • importSrpHome/openAccountMenuAfterLogin: -79%
  • importSrpHome/homeAfterImportWithNewWallet: -81%
  • importSrpHome/total: -75%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 sendTransactions/INP: p75 264ms
  • 🟡 sendTransactions/FCP: p75 1.9s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-webpack
dappPageLoad
[Sentry log · main/release]
🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • dappPageLoad/pageLoadTime: +19%
Bundle size diffs [🚀 Bundle size reduced!]
  • background: -336.39 KiB (-5.82%)
  • ui: 44 Bytes (0%)
  • common: -32.28 KiB (-0.27%)

@abretonc7s

Copy link
Copy Markdown
Contributor Author

farmslot run summary

Run Duration Model Nudges Grade Cost
8315492e ? opus / claude 0 ungraded (-) $unknown
Worker report

PR #43350 — Comments Report

PR: fix(perps): fix padding issue on extension market detail page
Branch: TAT-3264-fix-fix-orders-section-spacing

Context

PR adds paddingTop={4} to the orders section heading wrapper on the perps market detail page so its top spacing matches the adjacent Stats/Activity sections, plus locator-only data-testids and two regression tests.

Triage

  • Total comments: 5
  • REAL: 0
  • FALSE POSITIVE: 0
  • OUT OF SCOPE: 5
  • No inline review comments.
  • No CHANGES_REQUESTED reviews.
  • No cursor/bugbot findings.
  • No comment requires a code fix.

Merge-readiness work performed

  • Merged origin/main into the branch cleanly.
  • Re-ran yarn install --immutable.
  • Kept and committed required prettier reflow in perps-stats-section-header.

Validation

  • CI-parity gate green:
    • lint:changed
    • verify-locales
    • circular-deps:check
  • Coverage verdict: PASS, perps file 87%.
  • Unit tests: 86 passing.
  • Recipe re-validation skipped due to unrelated recipe-runner tooling skew:
    • extensionIdPath import missing from src/paths.ts
    • Issue is in runner/live-adapters tooling, not this PR.

Summary

  • Fix commit: 31b5528815
  • Merge-main commit: d113740dab
  • Files changed this run:
    • ui/pages/perps/perps-market-detail-page.tsx — prettier reflow only.
  • PR is merge-ready from reviewed comments and local validation.

@metamaskbotv2

metamaskbotv2 Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor
Builds ready [31b5528]
Deprecated Browserify fallback builds
⚡ Performance Benchmarks (Total: 🟢 14 pass · 🟡 11 warn · 🔴 0 fail)

Baseline (latest main): 51036da | Date: 5/2/2026 | Pipeline: 27178701958 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-webpackfirefox-webpack
loadNewAccount
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
confirmTx
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
bridgeUserActions
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • loadNewAccount/load_new_account: -57%
  • loadNewAccount/total: -57%
  • bridgeUserActions/bridge_load_page: -70%
  • bridgeUserActions/bridge_load_asset_picker: -48%
  • bridgeUserActions/bridge_search_token: -26%
  • bridgeUserActions/total: -38%
  • loadNewAccount/load_new_account: -49%
  • loadNewAccount/total: -49%
  • bridgeUserActions/bridge_load_page: -22%
  • bridgeUserActions/bridge_load_asset_picker: -48%
  • bridgeUserActions/bridge_search_token: -32%
  • bridgeUserActions/total: -33%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 1.8s
Startup Benchmarks · Samples: 100
Benchmarkchrome-webpackfirefox-webpack
startupStandardHome
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
startupPowerUserHome
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/uiStartup: -23%
  • startupStandardHome/load: -26%
  • startupStandardHome/domContentLoaded: -26%
  • startupStandardHome/domInteractive: -39%
  • startupStandardHome/firstPaint: -18%
  • startupStandardHome/backgroundConnect: -20%
  • startupStandardHome/loadScripts: -26%
  • startupStandardHome/setupStore: -14%
  • startupStandardHome/numNetworkReqs: -67%
  • startupPowerUserHome/uiStartup: -49%
  • startupPowerUserHome/load: -33%
  • startupPowerUserHome/domContentLoaded: -33%
  • startupPowerUserHome/domInteractive: -58%
  • startupPowerUserHome/firstPaint: -38%
  • startupPowerUserHome/backgroundConnect: -72%
  • startupPowerUserHome/loadScripts: -33%
  • startupPowerUserHome/setupStore: -20%
  • startupPowerUserHome/numNetworkReqs: -72%
  • startupStandardHome/uiStartup: +11%
  • startupStandardHome/load: +11%
  • startupStandardHome/domContentLoaded: +11%
  • startupStandardHome/domInteractive: -44%
  • startupStandardHome/backgroundConnect: +21%
  • startupStandardHome/firstReactRender: +44%
  • startupStandardHome/initialActions: +20%
  • startupStandardHome/setupStore: -47%
  • startupStandardHome/numNetworkReqs: -39%
  • startupPowerUserHome/uiStartup: -32%
  • startupPowerUserHome/domInteractive: -70%
  • startupPowerUserHome/backgroundConnect: -83%
  • startupPowerUserHome/firstReactRender: +37%
  • startupPowerUserHome/setupStore: -46%
  • startupPowerUserHome/numNetworkReqs: -74%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 startupPowerUserHome/INP: p75 424ms
  • 🟡 startupPowerUserHome/LCP: p75 2.7s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-webpackfirefox-webpack
onboardingImportWallet
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
onboardingNewWallet
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
🟡 total
assetDetails
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]
solanaAssetDetails
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
importSrpHome
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]
sendTransactions
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]
swap
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/importWalletToSocialScreen: +18%
  • onboardingImportWallet/srpButtonToSrpForm: -63%
  • onboardingImportWallet/pwFormToMetricsScreen: +531%
  • onboardingImportWallet/metricsToWalletReadyScreen: -28%
  • onboardingImportWallet/doneButtonToHomeScreen: -64%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: -15%
  • onboardingImportWallet/total: -44%
  • onboardingNewWallet/srpButtonToPwForm: -82%
  • onboardingNewWallet/createPwToRecoveryScreen: +816%
  • onboardingNewWallet/skipBackupToMetricsScreen: -75%
  • onboardingNewWallet/agreeButtonToOnboardingSuccess: -36%
  • onboardingNewWallet/doneButtonToAssetList: -39%
  • onboardingNewWallet/total: -35%
  • assetDetails/assetClickToPriceChart: -59%
  • assetDetails/total: -59%
  • solanaAssetDetails/assetClickToPriceChart: -74%
  • solanaAssetDetails/total: -74%
  • importSrpHome/loginToHomeScreen: -35%
  • importSrpHome/openAccountMenuAfterLogin: -78%
  • importSrpHome/homeAfterImportWithNewWallet: -80%
  • importSrpHome/total: -74%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/INP: p75 208ms
  • 🟡 importSrpHome/INP: p75 208ms
  • 🟡 sendTransactions/INP: p75 216ms
  • 🟡 assetDetails/FCP: p75 1.9s
  • 🟡 solanaAssetDetails/FCP: p75 1.9s
  • 🟡 importSrpHome/FCP: p75 1.9s
  • 🟡 sendTransactions/FCP: p75 1.8s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-webpack
dappPageLoad
[Sentry log · main/release]
🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • dappPageLoad/pageLoadTime: +16%
Bundle size diffs
  • background: 58 Bytes (0%)
  • ui: 105 Bytes (0%)
  • common: 20 Bytes (0%)

@abretonc7s

Copy link
Copy Markdown
Contributor Author
Run Duration Model Nudges Grade Cost
dc21819f (pr-complete) ? opus via claude 0 ungraded (-) $unknown
Worker report

PR #43350 — Comments Report

PR: fix(perps): fix padding issue on extension market detail page
Branch: TAT-3264-fix-fix-orders-section-spacing

Triage

# Author File Triage Action
1 github-actions[bot] conversation OUT OF SCOPE CLA signature status — informational, no action
2 mm-token-exchange-service[bot] conversation OUT OF SCOPE CODEOWNERS review request — informational, no action
3 abretonc7s conversation OUT OF SCOPE farmslot run summary (5cc0471f) — automated worker report, not review feedback
4 abretonc7s conversation OUT OF SCOPE farmslot run summary (5cc0471f) — automated worker report, not review feedback
5 metamaskbotv2[bot] conversation OUT OF SCOPE "Builds ready" notice — informational, no action
6 abretonc7s conversation OUT OF SCOPE farmslot run summary (8315492e) — automated worker report, not review feedback
7 metamaskbotv2[bot] conversation OUT OF SCOPE "Builds ready" notice — informational, no action
8 cursor[bot] (PR summary) PR body FALSE POSITIVE Cursor Bugbot: "Low Risk", no findings — nothing to fix

Notes

  • No inline review comments (pulls/.../comments empty).
  • No CHANGES_REQUESTED reviews.
  • No cursor[bot]/bugbot actionable findings — Bugbot summary reports "Low Risk" with zero issues.
  • All conversation comments are CI/bot notices or automated farmslot run summaries, none requiring a code change.

Result: no REAL comments → no code fixes required.

Recipe re-validation (step 10)

  • HAS_RECIPE: yes, RECIPE_SOURCE: family-inherited (trusted).
  • CDP runtime-health on port 7665: PASS (extension responsive, store/perps hooks present).
  • Recipe execution: SKIPPED — unrelated tooling failure. The external recipe runner failed to load with The requested module '../../../src/paths.ts' does not provide an export named 'extensionIdPath' — its precompiled live-adapters/extension/platform/cdp.mjs expects a paths.ts export that the current runner src/paths.ts no longer provides (runner-version mismatch). This is in the framework-injected recipe runner, not this PR's branch (which has zero code changes from this run) nor the origin/main merge (which only touched two e2e test files). Did not modify framework tooling per agent rules.
  • Did NOT use --launch-existing-dist (would kill+relaunch the orchestrator-owned browser on 7665); attached to the live CDP instead.
  • Fix already proven in the parent run (5cc0471f): inherited evidence-manifest.json carries real before/after macOS captures showing the orders header gap going 0px → 16px to match Stats, plus the empty-state screenshot. The PR's two new unit tests (pt-4 on both headers; orders section absent when no orders) pass locally (86/86).

Merge-main status: clean (no conflicts; origin/main merged, only e2e test files changed).

Final Summary

  • Total comments: 8 (0 REAL, 1 FALSE POSITIVE, 7 OUT OF SCOPE).
  • Code fixes: none — no actionable reviewer feedback.
  • Commit pushed: dd0f64fd2d (merge of origin/main into branch — keeps PR mergeable; no review-fix commit needed).
  • Files changed by this run: none (merge only brought in upstream e2e test files).
  • Recipe re-validation: SKIPPED (unrelated recipe-runner tooling regression; CDP healthy; fix already proven by inherited screenshot evidence + passing unit tests).
  • Merge-main status: clean.
  • CI parity gate: PASS (lint:changed, verify-locales, circular-deps). Unit tests 86/86 PASS. Coverage VERDICT PASS.

@metamaskbotv2

metamaskbotv2 Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor
Builds ready [dd0f64f] [reused from 31b5528]
Deprecated Browserify fallback builds
⚡ Performance Benchmarks (Total: 🟢 14 pass · 🟡 11 warn · 🔴 0 fail)

Baseline (latest main): 51036da | Date: 5/2/2026 | Pipeline: 27181401779 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-webpackfirefox-webpack
loadNewAccount
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
confirmTx
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
bridgeUserActions
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • loadNewAccount/load_new_account: -57%
  • loadNewAccount/total: -57%
  • bridgeUserActions/bridge_load_page: -70%
  • bridgeUserActions/bridge_load_asset_picker: -48%
  • bridgeUserActions/bridge_search_token: -26%
  • bridgeUserActions/total: -38%
  • loadNewAccount/load_new_account: -49%
  • loadNewAccount/total: -49%
  • bridgeUserActions/bridge_load_page: -22%
  • bridgeUserActions/bridge_load_asset_picker: -48%
  • bridgeUserActions/bridge_search_token: -32%
  • bridgeUserActions/total: -33%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 1.8s
Startup Benchmarks · Samples: 100
Benchmarkchrome-webpackfirefox-webpack
startupStandardHome
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
startupPowerUserHome
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/uiStartup: -23%
  • startupStandardHome/load: -26%
  • startupStandardHome/domContentLoaded: -26%
  • startupStandardHome/domInteractive: -39%
  • startupStandardHome/firstPaint: -18%
  • startupStandardHome/backgroundConnect: -20%
  • startupStandardHome/loadScripts: -26%
  • startupStandardHome/setupStore: -14%
  • startupStandardHome/numNetworkReqs: -67%
  • startupPowerUserHome/uiStartup: -49%
  • startupPowerUserHome/load: -33%
  • startupPowerUserHome/domContentLoaded: -33%
  • startupPowerUserHome/domInteractive: -58%
  • startupPowerUserHome/firstPaint: -38%
  • startupPowerUserHome/backgroundConnect: -72%
  • startupPowerUserHome/loadScripts: -33%
  • startupPowerUserHome/setupStore: -20%
  • startupPowerUserHome/numNetworkReqs: -72%
  • startupStandardHome/uiStartup: +11%
  • startupStandardHome/load: +11%
  • startupStandardHome/domContentLoaded: +11%
  • startupStandardHome/domInteractive: -44%
  • startupStandardHome/backgroundConnect: +21%
  • startupStandardHome/firstReactRender: +44%
  • startupStandardHome/initialActions: +20%
  • startupStandardHome/setupStore: -47%
  • startupStandardHome/numNetworkReqs: -39%
  • startupPowerUserHome/uiStartup: -32%
  • startupPowerUserHome/domInteractive: -70%
  • startupPowerUserHome/backgroundConnect: -83%
  • startupPowerUserHome/firstReactRender: +37%
  • startupPowerUserHome/setupStore: -46%
  • startupPowerUserHome/numNetworkReqs: -74%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 startupPowerUserHome/INP: p75 424ms
  • 🟡 startupPowerUserHome/LCP: p75 2.7s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-webpackfirefox-webpack
onboardingImportWallet
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
onboardingNewWallet
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
🟡 total
assetDetails
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]
solanaAssetDetails
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
importSrpHome
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]
sendTransactions
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]
swap
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/importWalletToSocialScreen: +18%
  • onboardingImportWallet/srpButtonToSrpForm: -63%
  • onboardingImportWallet/pwFormToMetricsScreen: +531%
  • onboardingImportWallet/metricsToWalletReadyScreen: -28%
  • onboardingImportWallet/doneButtonToHomeScreen: -64%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: -15%
  • onboardingImportWallet/total: -44%
  • onboardingNewWallet/srpButtonToPwForm: -82%
  • onboardingNewWallet/createPwToRecoveryScreen: +816%
  • onboardingNewWallet/skipBackupToMetricsScreen: -75%
  • onboardingNewWallet/agreeButtonToOnboardingSuccess: -36%
  • onboardingNewWallet/doneButtonToAssetList: -39%
  • onboardingNewWallet/total: -35%
  • assetDetails/assetClickToPriceChart: -59%
  • assetDetails/total: -59%
  • solanaAssetDetails/assetClickToPriceChart: -74%
  • solanaAssetDetails/total: -74%
  • importSrpHome/loginToHomeScreen: -35%
  • importSrpHome/openAccountMenuAfterLogin: -78%
  • importSrpHome/homeAfterImportWithNewWallet: -80%
  • importSrpHome/total: -74%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/INP: p75 208ms
  • 🟡 importSrpHome/INP: p75 208ms
  • 🟡 sendTransactions/INP: p75 216ms
  • 🟡 assetDetails/FCP: p75 1.9s
  • 🟡 solanaAssetDetails/FCP: p75 1.9s
  • 🟡 importSrpHome/FCP: p75 1.9s
  • 🟡 sendTransactions/FCP: p75 1.8s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-webpack
dappPageLoad
[Sentry log · main/release]
🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • dappPageLoad/pageLoadTime: +16%
Bundle size diffs
  • background: 58 Bytes (0%)
  • ui: 105 Bytes (0%)
  • common: 20 Bytes (0%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants