Skip to content

[backport cloud/1.46] fix(billing): refresh workspace billing status after completed top-up (FE-932)#13007

Merged
christian-byrne merged 1 commit into
cloud/1.46from
backport-12787-to-cloud-1.46
Jun 19, 2026
Merged

[backport cloud/1.46] fix(billing): refresh workspace billing status after completed top-up (FE-932)#13007
christian-byrne merged 1 commit into
cloud/1.46from
backport-12787-to-cloud-1.46

Conversation

@comfy-pr-bot

Copy link
Copy Markdown
Member

Backport of #12787 to cloud/1.46

Automatically created by backport workflow.

… (FE-932) (#12787)

## Summary

A completed workspace top-up refreshed only the balance, leaving billing
status — and `subscription.hasFunds` (derived from
`statusData.has_funds`) — stale until the next status fetch. The
completed handler now refreshes both.

## Changes

- **What**: `TopUpCreditsDialogContentWorkspace.vue` completed branch —
`await fetchBalance()` → `await Promise.all([fetchBalance(),
fetchStatus()])` (both already exposed on `useBillingContext()`).
- **Breaking**: none.

## Review Focus

- Pre-existing bug (predates the B2 facade; `main`'s top-up already
called `fetchBalance` only). Test validity proven by reverting to
balance-only → the completed case goes red on the `fetchStatus`
assertion.
- Tests: completed → both refresh; pending / failed → neither (3 cases).
typecheck / oxlint / eslint / stylelint / oxfmt / knip clean.

Fixes FE-932
@comfy-pr-bot comfy-pr-bot added the backport Backporting a PR onto a release candidate label Jun 19, 2026
@dosubot dosubot Bot added the size:XS This PR changes 0-9 lines, ignoring generated files. label Jun 19, 2026
@codecov

codecov Bot commented Jun 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

@@              Coverage Diff              @@
##             cloud/1.46   #13007   +/-   ##
=============================================
  Coverage              ?   61.93%           
=============================================
  Files                 ?     1455           
  Lines                 ?    75272           
  Branches              ?    21239           
=============================================
  Hits                  ?    46620           
  Misses                ?    28303           
  Partials              ?      349           
Flag Coverage Δ
unit 61.93% <100.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
.../components/TopUpCreditsDialogContentWorkspace.vue 69.23% <100.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

Copy link
Copy Markdown

📦 Bundle Size

⏳ Size data collection in progress…

⚡ Performance Report

canvas-idle: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 57.9 MB heap
canvas-mouse-sweep: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 48.7 MB heap
canvas-zoom-sweep: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 57.5 MB heap
dom-widget-clipping: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 59.2 MB heap
large-graph-idle: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 62.1 MB heap
large-graph-pan: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 77.3 MB heap
large-graph-zoom: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 64.7 MB heap
minimap-idle: · 60.0 avg FPS · 59.5 P5 FPS ✅ (target: ≥52) · 0ms TBT · 68.6 MB heap
subgraph-dom-widget-clipping: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 56.9 MB heap
subgraph-idle: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 53.8 MB heap
subgraph-mouse-sweep: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 45.7 MB heap
subgraph-transition-enter: · 60.0 avg FPS · 59.5 P5 FPS ✅ (target: ≥52) · 149ms TBT · 74.0 MB heap
viewport-pan-sweep: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 65.0 MB heap
vue-large-graph-idle: · 56.3 avg FPS · 59.5 P5 FPS ✅ (target: ≥52) · 0ms TBT · 158.5 MB heap
vue-large-graph-pan: · 58.1 avg FPS · 59.5 P5 FPS ✅ (target: ≥52) · 0ms TBT · 168.4 MB heap
workflow-execution: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 45.7 MB heap

ℹ️ No baseline found — significance unavailable.

Absolute values
Metric Value
canvas-idle: avg frame time 17ms
canvas-idle: p95 frame time 17ms
canvas-idle: layout duration 0ms
canvas-idle: style recalc duration 7ms
canvas-idle: layout count 0
canvas-idle: style recalc count 9
canvas-idle: task duration 377ms
canvas-idle: script duration 20ms
canvas-idle: TBT 0ms
canvas-idle: heap used 57.9 MB
canvas-idle: DOM nodes -129
canvas-idle: event listeners -96
canvas-mouse-sweep: avg frame time 17ms
canvas-mouse-sweep: p95 frame time 17ms
canvas-mouse-sweep: layout duration 3ms
canvas-mouse-sweep: style recalc duration 37ms
canvas-mouse-sweep: layout count 12
canvas-mouse-sweep: style recalc count 75
canvas-mouse-sweep: task duration 779ms
canvas-mouse-sweep: script duration 117ms
canvas-mouse-sweep: TBT 0ms
canvas-mouse-sweep: heap used 48.7 MB
canvas-mouse-sweep: DOM nodes 57
canvas-mouse-sweep: event listeners 5
canvas-zoom-sweep: avg frame time 17ms
canvas-zoom-sweep: p95 frame time 17ms
canvas-zoom-sweep: layout duration 1ms
canvas-zoom-sweep: style recalc duration 17ms
canvas-zoom-sweep: layout count 6
canvas-zoom-sweep: style recalc count 31
canvas-zoom-sweep: task duration 319ms
canvas-zoom-sweep: script duration 22ms
canvas-zoom-sweep: TBT 0ms
canvas-zoom-sweep: heap used 57.5 MB
canvas-zoom-sweep: DOM nodes 78
canvas-zoom-sweep: event listeners 19
dom-widget-clipping: avg frame time 17ms
dom-widget-clipping: p95 frame time 17ms
dom-widget-clipping: layout duration 0ms
dom-widget-clipping: style recalc duration 9ms
dom-widget-clipping: layout count 0
dom-widget-clipping: style recalc count 12
dom-widget-clipping: task duration 333ms
dom-widget-clipping: script duration 57ms
dom-widget-clipping: TBT 0ms
dom-widget-clipping: heap used 59.2 MB
dom-widget-clipping: DOM nodes 20
dom-widget-clipping: event listeners 1
large-graph-idle: avg frame time 17ms
large-graph-idle: p95 frame time 17ms
large-graph-idle: layout duration 0ms
large-graph-idle: style recalc duration 7ms
large-graph-idle: layout count 0
large-graph-idle: style recalc count 9
large-graph-idle: task duration 533ms
large-graph-idle: script duration 82ms
large-graph-idle: TBT 0ms
large-graph-idle: heap used 62.1 MB
large-graph-idle: DOM nodes -284
large-graph-idle: event listeners -163
large-graph-pan: avg frame time 17ms
large-graph-pan: p95 frame time 17ms
large-graph-pan: layout duration 0ms
large-graph-pan: style recalc duration 21ms
large-graph-pan: layout count 0
large-graph-pan: style recalc count 70
large-graph-pan: task duration 989ms
large-graph-pan: script duration 359ms
large-graph-pan: TBT 0ms
large-graph-pan: heap used 77.3 MB
large-graph-pan: DOM nodes 20
large-graph-pan: event listeners 5
large-graph-zoom: avg frame time 17ms
large-graph-zoom: p95 frame time 17ms
large-graph-zoom: layout duration 8ms
large-graph-zoom: style recalc duration 24ms
large-graph-zoom: layout count 60
large-graph-zoom: style recalc count 65
large-graph-zoom: task duration 1287ms
large-graph-zoom: script duration 472ms
large-graph-zoom: TBT 0ms
large-graph-zoom: heap used 64.7 MB
large-graph-zoom: DOM nodes 13
large-graph-zoom: event listeners 8
minimap-idle: avg frame time 17ms
minimap-idle: p95 frame time 17ms
minimap-idle: layout duration 0ms
minimap-idle: style recalc duration 10ms
minimap-idle: layout count 0
minimap-idle: style recalc count 9
minimap-idle: task duration 514ms
minimap-idle: script duration 85ms
minimap-idle: TBT 0ms
minimap-idle: heap used 68.6 MB
minimap-idle: DOM nodes 18
minimap-idle: event listeners 4
subgraph-dom-widget-clipping: avg frame time 17ms
subgraph-dom-widget-clipping: p95 frame time 17ms
subgraph-dom-widget-clipping: layout duration 0ms
subgraph-dom-widget-clipping: style recalc duration 11ms
subgraph-dom-widget-clipping: layout count 0
subgraph-dom-widget-clipping: style recalc count 47
subgraph-dom-widget-clipping: task duration 365ms
subgraph-dom-widget-clipping: script duration 128ms
subgraph-dom-widget-clipping: TBT 0ms
subgraph-dom-widget-clipping: heap used 56.9 MB
subgraph-dom-widget-clipping: DOM nodes 20
subgraph-dom-widget-clipping: event listeners 6
subgraph-idle: avg frame time 17ms
subgraph-idle: p95 frame time 17ms
subgraph-idle: layout duration 0ms
subgraph-idle: style recalc duration 9ms
subgraph-idle: layout count 0
subgraph-idle: style recalc count 11
subgraph-idle: task duration 352ms
subgraph-idle: script duration 17ms
subgraph-idle: TBT 0ms
subgraph-idle: heap used 53.8 MB
subgraph-idle: DOM nodes 22
subgraph-idle: event listeners 4
subgraph-mouse-sweep: avg frame time 17ms
subgraph-mouse-sweep: p95 frame time 17ms
subgraph-mouse-sweep: layout duration 4ms
subgraph-mouse-sweep: style recalc duration 37ms
subgraph-mouse-sweep: layout count 16
subgraph-mouse-sweep: style recalc count 77
subgraph-mouse-sweep: task duration 651ms
subgraph-mouse-sweep: script duration 93ms
subgraph-mouse-sweep: TBT 0ms
subgraph-mouse-sweep: heap used 45.7 MB
subgraph-mouse-sweep: DOM nodes 63
subgraph-mouse-sweep: event listeners 4
subgraph-transition-enter: avg frame time 17ms
subgraph-transition-enter: p95 frame time 17ms
subgraph-transition-enter: layout duration 12ms
subgraph-transition-enter: style recalc duration 27ms
subgraph-transition-enter: layout count 5
subgraph-transition-enter: style recalc count 17
subgraph-transition-enter: task duration 711ms
subgraph-transition-enter: script duration 26ms
subgraph-transition-enter: TBT 149ms
subgraph-transition-enter: heap used 74.0 MB
subgraph-transition-enter: DOM nodes 13833
subgraph-transition-enter: event listeners 2527
viewport-pan-sweep: avg frame time 17ms
viewport-pan-sweep: p95 frame time 17ms
viewport-pan-sweep: layout duration 0ms
viewport-pan-sweep: style recalc duration 61ms
viewport-pan-sweep: layout count 0
viewport-pan-sweep: style recalc count 252
viewport-pan-sweep: task duration 3616ms
viewport-pan-sweep: script duration 1209ms
viewport-pan-sweep: TBT 0ms
viewport-pan-sweep: heap used 65.0 MB
viewport-pan-sweep: DOM nodes -126
viewport-pan-sweep: event listeners -80
vue-large-graph-idle: avg frame time 18ms
vue-large-graph-idle: p95 frame time 17ms
vue-large-graph-idle: layout duration 0ms
vue-large-graph-idle: style recalc duration 0ms
vue-large-graph-idle: layout count 0
vue-large-graph-idle: style recalc count 0
vue-large-graph-idle: task duration 13878ms
vue-large-graph-idle: script duration 618ms
vue-large-graph-idle: TBT 0ms
vue-large-graph-idle: heap used 158.5 MB
vue-large-graph-idle: DOM nodes -3309
vue-large-graph-idle: event listeners -16471
vue-large-graph-pan: avg frame time 17ms
vue-large-graph-pan: p95 frame time 17ms
vue-large-graph-pan: layout duration 0ms
vue-large-graph-pan: style recalc duration 20ms
vue-large-graph-pan: layout count 0
vue-large-graph-pan: style recalc count 80
vue-large-graph-pan: task duration 15758ms
vue-large-graph-pan: script duration 889ms
vue-large-graph-pan: TBT 0ms
vue-large-graph-pan: heap used 168.4 MB
vue-large-graph-pan: DOM nodes -3309
vue-large-graph-pan: event listeners -16470
workflow-execution: avg frame time 17ms
workflow-execution: p95 frame time 17ms
workflow-execution: layout duration 1ms
workflow-execution: style recalc duration 25ms
workflow-execution: layout count 5
workflow-execution: style recalc count 17
workflow-execution: task duration 209ms
workflow-execution: script duration 22ms
workflow-execution: TBT 0ms
workflow-execution: heap used 45.7 MB
workflow-execution: DOM nodes -205
workflow-execution: event listeners -134
Raw data
{
  "timestamp": "2026-06-19T13:41:45.135Z",
  "gitSha": "f5796e72654e5a4749257699ac009416c4fe2a9b",
  "branch": "backport-12787-to-cloud-1.46",
  "measurements": [
    {
      "name": "canvas-idle",
      "durationMs": 2030.732999999998,
      "styleRecalcs": 9,
      "styleRecalcDurationMs": 7.207000000000002,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 352.526,
      "heapDeltaBytes": -2219416,
      "heapUsedBytes": 56454584,
      "domNodes": 18,
      "jsHeapTotalBytes": 23855104,
      "scriptDurationMs": 15.759000000000002,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "canvas-idle",
      "durationMs": 2068.245999999988,
      "styleRecalcs": 8,
      "styleRecalcDurationMs": 7.587999999999999,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 400.54200000000003,
      "heapDeltaBytes": -2882776,
      "heapUsedBytes": 64984888,
      "domNodes": -275,
      "jsHeapTotalBytes": 16969728,
      "scriptDurationMs": 23.556000000000004,
      "eventListeners": -195,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "canvas-mouse-sweep",
      "durationMs": 1984.4469999999887,
      "styleRecalcs": 75,
      "styleRecalcDurationMs": 40.229,
      "layouts": 12,
      "layoutDurationMs": 3.5979999999999994,
      "taskDurationMs": 839.342,
      "heapDeltaBytes": -7316072,
      "heapUsedBytes": 51347616,
      "domNodes": 58,
      "jsHeapTotalBytes": 26476544,
      "scriptDurationMs": 127.46099999999998,
      "eventListeners": 6,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333332,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "canvas-mouse-sweep",
      "durationMs": 1765.8830000000307,
      "styleRecalcs": 74,
      "styleRecalcDurationMs": 34.388999999999996,
      "layouts": 12,
      "layoutDurationMs": 3.3750000000000004,
      "taskDurationMs": 717.8729999999999,
      "heapDeltaBytes": -8085408,
      "heapUsedBytes": 50709864,
      "domNodes": 56,
      "jsHeapTotalBytes": 24903680,
      "scriptDurationMs": 106.988,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "canvas-zoom-sweep",
      "durationMs": 1721.1149999999975,
      "styleRecalcs": 31,
      "styleRecalcDurationMs": 15.504,
      "layouts": 6,
      "layoutDurationMs": 0.5600000000000002,
      "taskDurationMs": 317.067,
      "heapDeltaBytes": 2023788,
      "heapUsedBytes": 60289516,
      "domNodes": 80,
      "jsHeapTotalBytes": 25165824,
      "scriptDurationMs": 23.383999999999997,
      "eventListeners": 19,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.670000000000012,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "canvas-zoom-sweep",
      "durationMs": 1727.455999999961,
      "styleRecalcs": 30,
      "styleRecalcDurationMs": 18.105,
      "layouts": 6,
      "layoutDurationMs": 0.7739999999999999,
      "taskDurationMs": 320.855,
      "heapDeltaBytes": 1516852,
      "heapUsedBytes": 60229420,
      "domNodes": 76,
      "jsHeapTotalBytes": 26476544,
      "scriptDurationMs": 20.532999999999998,
      "eventListeners": 19,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66999999999998,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "dom-widget-clipping",
      "durationMs": 609.8479999999995,
      "styleRecalcs": 13,
      "styleRecalcDurationMs": 11.070000000000002,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 343.83000000000004,
      "heapDeltaBytes": 5895564,
      "heapUsedBytes": 58490640,
      "domNodes": 22,
      "jsHeapTotalBytes": 10485760,
      "scriptDurationMs": 61.802,
      "eventListeners": 2,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.699999999999818
    },
    {
      "name": "dom-widget-clipping",
      "durationMs": 531.7169999999578,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 6.973999999999999,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 322.264,
      "heapDeltaBytes": 7013752,
      "heapUsedBytes": 65691308,
      "domNodes": 18,
      "jsHeapTotalBytes": 18874368,
      "scriptDurationMs": 51.648,
      "eventListeners": 0,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66666666666665,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "large-graph-idle",
      "durationMs": 2057.165999999995,
      "styleRecalcs": 9,
      "styleRecalcDurationMs": 7.332000000000002,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 556.068,
      "heapDeltaBytes": -23891292,
      "heapUsedBytes": 57945624,
      "domNodes": -299,
      "jsHeapTotalBytes": 2740224,
      "scriptDurationMs": 90.15200000000002,
      "eventListeners": -195,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "large-graph-idle",
      "durationMs": 2013.3769999999913,
      "styleRecalcs": 9,
      "styleRecalcDurationMs": 6.910000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 509.911,
      "heapDeltaBytes": 11449296,
      "heapUsedBytes": 72210316,
      "domNodes": -268,
      "jsHeapTotalBytes": 4980736,
      "scriptDurationMs": 74.521,
      "eventListeners": -131,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66999999999998,
      "p95FrameDurationMs": 16.699999999999818
    },
    {
      "name": "large-graph-pan",
      "durationMs": 2136.1539999999763,
      "styleRecalcs": 70,
      "styleRecalcDurationMs": 20.985,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 988.9590000000002,
      "heapDeltaBytes": 10207924,
      "heapUsedBytes": 82646756,
      "domNodes": 20,
      "jsHeapTotalBytes": 11591680,
      "scriptDurationMs": 356.03000000000003,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.670000000000012,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "large-graph-pan",
      "durationMs": 2114.9769999999535,
      "styleRecalcs": 70,
      "styleRecalcDurationMs": 21.400999999999996,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 989.915,
      "heapDeltaBytes": 8580724,
      "heapUsedBytes": 79417772,
      "domNodes": 20,
      "jsHeapTotalBytes": 14737408,
      "scriptDurationMs": 361.894,
      "eventListeners": 6,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "large-graph-zoom",
      "durationMs": 3134.7130000000334,
      "styleRecalcs": 65,
      "styleRecalcDurationMs": 28.076999999999998,
      "layouts": 60,
      "layoutDurationMs": 8.202000000000002,
      "taskDurationMs": 1330.9299999999998,
      "heapDeltaBytes": 13186180,
      "heapUsedBytes": 68081016,
      "domNodes": 12,
      "jsHeapTotalBytes": 7602176,
      "scriptDurationMs": 488.21500000000003,
      "eventListeners": 8,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333335,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "large-graph-zoom",
      "durationMs": 3034.4609999999648,
      "styleRecalcs": 65,
      "styleRecalcDurationMs": 20.216,
      "layouts": 60,
      "layoutDurationMs": 8.157999999999998,
      "taskDurationMs": 1242.6589999999999,
      "heapDeltaBytes": -6188060,
      "heapUsedBytes": 67546840,
      "domNodes": 14,
      "jsHeapTotalBytes": 10366976,
      "scriptDurationMs": 455.889,
      "eventListeners": 8,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "minimap-idle",
      "durationMs": 2000.9190000000103,
      "styleRecalcs": 9,
      "styleRecalcDurationMs": 7.559000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 481.602,
      "heapDeltaBytes": -10267468,
      "heapUsedBytes": 62558944,
      "domNodes": 18,
      "jsHeapTotalBytes": 8531968,
      "scriptDurationMs": 77.043,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "minimap-idle",
      "durationMs": 2030.9819999999945,
      "styleRecalcs": 9,
      "styleRecalcDurationMs": 12.888000000000002,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 546.012,
      "heapDeltaBytes": 13369564,
      "heapUsedBytes": 81269876,
      "domNodes": 18,
      "jsHeapTotalBytes": 14299136,
      "scriptDurationMs": 93.486,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "subgraph-dom-widget-clipping",
      "durationMs": 582.416999999964,
      "styleRecalcs": 47,
      "styleRecalcDurationMs": 11.435999999999998,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 371.868,
      "heapDeltaBytes": -10185800,
      "heapUsedBytes": 53041792,
      "domNodes": 20,
      "jsHeapTotalBytes": 15990784,
      "scriptDurationMs": 128.839,
      "eventListeners": 6,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "subgraph-dom-widget-clipping",
      "durationMs": 545.710999999983,
      "styleRecalcs": 47,
      "styleRecalcDurationMs": 10.975999999999997,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 358.57099999999997,
      "heapDeltaBytes": 7536940,
      "heapUsedBytes": 66358716,
      "domNodes": 20,
      "jsHeapTotalBytes": 17563648,
      "scriptDurationMs": 127.90599999999999,
      "eventListeners": 6,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "subgraph-idle",
      "durationMs": 1991.5320000000065,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 8.958,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 351.35499999999996,
      "heapDeltaBytes": -2443088,
      "heapUsedBytes": 56220780,
      "domNodes": 22,
      "jsHeapTotalBytes": 26476544,
      "scriptDurationMs": 16.889000000000003,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66999999999998,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "subgraph-idle",
      "durationMs": 1991.7669999999816,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 9.472000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 353.35699999999997,
      "heapDeltaBytes": -2253952,
      "heapUsedBytes": 56583480,
      "domNodes": 22,
      "jsHeapTotalBytes": 25690112,
      "scriptDurationMs": 17.201,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333332,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "subgraph-mouse-sweep",
      "durationMs": 1707.398000000012,
      "styleRecalcs": 77,
      "styleRecalcDurationMs": 37.476,
      "layouts": 16,
      "layoutDurationMs": 4.079,
      "taskDurationMs": 658.9750000000001,
      "heapDeltaBytes": -10638328,
      "heapUsedBytes": 48050376,
      "domNodes": 64,
      "jsHeapTotalBytes": 25952256,
      "scriptDurationMs": 93.312,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "subgraph-mouse-sweep",
      "durationMs": 1692.9269999999406,
      "styleRecalcs": 76,
      "styleRecalcDurationMs": 35.926,
      "layouts": 16,
      "layoutDurationMs": 4.015000000000001,
      "taskDurationMs": 642.696,
      "heapDeltaBytes": -10985304,
      "heapUsedBytes": 47726140,
      "domNodes": 62,
      "jsHeapTotalBytes": 26476544,
      "scriptDurationMs": 91.82300000000001,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333335,
      "p95FrameDurationMs": 16.699999999999818
    },
    {
      "name": "subgraph-transition-enter",
      "durationMs": 915.1479999999879,
      "styleRecalcs": 17,
      "styleRecalcDurationMs": 27.381000000000004,
      "layouts": 5,
      "layoutDurationMs": 12.400999999999998,
      "taskDurationMs": 710.5100000000002,
      "heapDeltaBytes": 5052048,
      "heapUsedBytes": 77547480,
      "domNodes": 13833,
      "jsHeapTotalBytes": 16777216,
      "scriptDurationMs": 26.122999999999994,
      "eventListeners": 2527,
      "totalBlockingTimeMs": 149,
      "frameDurationMs": 16.670000000000012,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "viewport-pan-sweep",
      "durationMs": 8175.000000000011,
      "styleRecalcs": 250,
      "styleRecalcDurationMs": 59.007,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 3458.373,
      "heapDeltaBytes": -997828,
      "heapUsedBytes": 66249476,
      "domNodes": -276,
      "jsHeapTotalBytes": 581632,
      "scriptDurationMs": 1147.842,
      "eventListeners": -179,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.80000000000109
    },
    {
      "name": "viewport-pan-sweep",
      "durationMs": 8220.23200000001,
      "styleRecalcs": 253,
      "styleRecalcDurationMs": 62.84,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 3772.839,
      "heapDeltaBytes": 4080,
      "heapUsedBytes": 70010092,
      "domNodes": 24,
      "jsHeapTotalBytes": 19980288,
      "scriptDurationMs": 1269.793,
      "eventListeners": 20,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "vue-large-graph-idle",
      "durationMs": 13793.766000000005,
      "styleRecalcs": 0,
      "styleRecalcDurationMs": 0,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 13754.632,
      "heapDeltaBytes": -38068924,
      "heapUsedBytes": 164060960,
      "domNodes": -3310,
      "jsHeapTotalBytes": 19632128,
      "scriptDurationMs": 601.974,
      "eventListeners": -16470,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 17.219999999999953,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "vue-large-graph-idle",
      "durationMs": 14015.68599999996,
      "styleRecalcs": 0,
      "styleRecalcDurationMs": 0,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 14001.065,
      "heapDeltaBytes": -29922920,
      "heapUsedBytes": 168282520,
      "domNodes": -3308,
      "jsHeapTotalBytes": 17797120,
      "scriptDurationMs": 634.9279999999999,
      "eventListeners": -16472,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 18.333333333333332,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "vue-large-graph-pan",
      "durationMs": 15615.222000000016,
      "styleRecalcs": 78,
      "styleRecalcDurationMs": 19.96500000000004,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 15593.252999999999,
      "heapDeltaBytes": -37327660,
      "heapUsedBytes": 175231756,
      "domNodes": -3310,
      "jsHeapTotalBytes": 21381120,
      "scriptDurationMs": 868.7860000000001,
      "eventListeners": -16470,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 17.219999999999953,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "vue-large-graph-pan",
      "durationMs": 15944.149999999921,
      "styleRecalcs": 82,
      "styleRecalcDurationMs": 20.66599999999999,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 15922.21,
      "heapDeltaBytes": -17817388,
      "heapUsedBytes": 177827032,
      "domNodes": -3308,
      "jsHeapTotalBytes": 16924672,
      "scriptDurationMs": 909.235,
      "eventListeners": -16470,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 17.22666666666664,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "workflow-execution",
      "durationMs": 463.39899999998124,
      "styleRecalcs": 17,
      "styleRecalcDurationMs": 21.075999999999997,
      "layouts": 4,
      "layoutDurationMs": 1.1400000000000001,
      "taskDurationMs": 192.643,
      "heapDeltaBytes": -22171012,
      "heapUsedBytes": 47646216,
      "domNodes": -204,
      "jsHeapTotalBytes": 5435392,
      "scriptDurationMs": 21.088,
      "eventListeners": -134,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666682,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "workflow-execution",
      "durationMs": 475.0490000000127,
      "styleRecalcs": 17,
      "styleRecalcDurationMs": 29.880000000000003,
      "layouts": 5,
      "layoutDurationMs": 1.3479999999999999,
      "taskDurationMs": 225.049,
      "heapDeltaBytes": -22528856,
      "heapUsedBytes": 48125832,
      "domNodes": -206,
      "jsHeapTotalBytes": 5173248,
      "scriptDurationMs": 22.148999999999997,
      "eventListeners": -134,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    }
  ]
}

@github-actions

Copy link
Copy Markdown

🎭 Playwright: ✅ 1667 passed, 0 failed · 3 flaky

📊 Browser Reports
  • chromium: View Report (✅ 1646 / ❌ 0 / ⚠️ 3 / ⏭️ 5)
  • chromium-2x: View Report (✅ 2 / ❌ 0 / ⚠️ 0 / ⏭️ 0)
  • chromium-0.5x: View Report (✅ 1 / ❌ 0 / ⚠️ 0 / ⏭️ 0)
  • mobile-chrome: View Report (✅ 18 / ❌ 0 / ⚠️ 0 / ⏭️ 0)

@christian-byrne christian-byrne merged commit 38e7716 into cloud/1.46 Jun 19, 2026
62 checks passed
@christian-byrne christian-byrne deleted the backport-12787-to-cloud-1.46 branch June 19, 2026 21:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport Backporting a PR onto a release candidate size:XS This PR changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants