Skip to content

ci: bump cursor-review to github-workflows@c383408 - #14224

Merged
christian-byrne merged 1 commit into
mainfrom
ci/bump-cursor-review
Aug 8, 2026
Merged

ci: bump cursor-review to github-workflows@c383408#14224
christian-byrne merged 1 commit into
mainfrom
ci/bump-cursor-review

Conversation

@cloud-code-bot

@cloud-code-bot cloud-code-bot Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Automatic SHA bump — cursor-review.yml was updated in Comfy-Org/github-workflows at c383408. Opened by the bump-cursor-review-callers workflow.

@cloud-code-bot
cloud-code-bot Bot requested a review from a team July 28, 2026 20:44
@dosubot dosubot Bot added the size:XS This PR changes 0-9 lines, ignoring generated files. label Jul 28, 2026
@github-actions

github-actions Bot commented Jul 28, 2026

Copy link
Copy Markdown

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

📊 Browser Reports
  • chromium: View Report (✅ 1763 / ❌ 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)

📦 Bundle: 8.25 MB gzip ⚪ 0 B

Details

Summary

  • Raw size: 34.7 MB baseline 34.7 MB — ⚪ 0 B
  • Gzip: 8.25 MB baseline 8.25 MB — ⚪ 0 B
  • Brotli: 5.71 MB baseline 5.71 MB — ⚪ 0 B
  • Bundles: 428 current • 428 baseline

Category Glance
Vendor & Third-Party ⚪ 0 B (15.7 MB) · Other ⚪ 0 B (12.8 MB) · Data & Services ⚪ 0 B (3.47 MB) · Graph Workspace ⚪ 0 B (1.35 MB) · Panels & Settings ⚪ 0 B (551 kB) · Utilities & Hooks ⚪ 0 B (386 kB) · + 5 more

App Entry Points — 3.64 kB (baseline 3.64 kB) • ⚪ 0 B

Main entry bundles and manifests

Status: 1 unchanged

Graph Workspace — 1.35 MB (baseline 1.35 MB) • ⚪ 0 B

Graph editor runtime, canvas, workflow orchestration

Status: 2 unchanged

Views & Navigation — 112 kB (baseline 112 kB) • ⚪ 0 B

Top-level views, pages, and routed surfaces

Status: 17 unchanged

Panels & Settings — 551 kB (baseline 551 kB) • ⚪ 0 B

Configuration panels, inspectors, and settings screens

Status: 26 unchanged

User & Accounts — 27 kB (baseline 27 kB) • ⚪ 0 B

Authentication, profile, and account management bundles

Status: 10 unchanged

Editors & Dialogs — 124 kB (baseline 124 kB) • ⚪ 0 B

Modals, dialogs, drawers, and in-app editors

Status: 7 unchanged

UI Components — 70.8 kB (baseline 70.8 kB) • ⚪ 0 B

Reusable component library chunks

Status: 15 unchanged

Data & Services — 3.47 MB (baseline 3.47 MB) • ⚪ 0 B

Stores, services, APIs, and repositories

Status: 17 unchanged

Utilities & Hooks — 386 kB (baseline 386 kB) • ⚪ 0 B

Helpers, composables, and utility bundles

Status: 36 unchanged

Vendor & Third-Party — 15.7 MB (baseline 15.7 MB) • ⚪ 0 B

External libraries and shared vendor chunks

Status: 16 unchanged

Other — 12.8 MB (baseline 12.8 MB) • ⚪ 0 B

Bundles that do not match a named category

Status: 281 unchanged

⚡ Performance Report

canvas-idle: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 66.5 MB heap
canvas-mouse-sweep: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 60.7 MB heap
canvas-zoom-sweep: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 69.1 MB heap
dom-widget-clipping: · 60.0 avg FPS · 59.5 P5 FPS ✅ (target: ≥52) · 0ms TBT · 49.1 MB heap
large-graph-idle: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 64.5 MB heap
large-graph-pan: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 59.0 MB heap
large-graph-zoom: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 80.2 MB heap
minimap-idle: · 60.0 avg FPS · 59.5 P5 FPS ✅ (target: ≥52) · 0ms TBT · 64.7 MB heap
subgraph-dom-widget-clipping: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 50.9 MB heap
subgraph-idle: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 55.0 MB heap
subgraph-mouse-sweep: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 57.1 MB heap
subgraph-transition-enter: · 60.0 avg FPS · 59.5 P5 FPS ✅ (target: ≥52) · 88ms TBT · 95.4 MB heap
viewport-pan-sweep: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 66.6 MB heap
vue-large-graph-idle: · 60.0 avg FPS · 59.7 P5 FPS ✅ (target: ≥52) · 0ms TBT · 160.0 MB heap
vue-large-graph-pan: · 59.0 avg FPS · 59.5 P5 FPS ✅ (target: ≥52) · 0ms TBT · 157.2 MB heap
workflow-execution: · 60.0 avg FPS · 59.9 P5 FPS ✅ (target: ≥52) · 0ms TBT · 65.2 MB heap

✅ No regressions detected.

All metrics
Metric Baseline PR (median) Δ Sig
canvas-idle: avg frame time 17ms 17ms +0% z=-0.1
canvas-idle: p95 frame time 17ms 17ms +0%
canvas-idle: layout duration 0ms 0ms +0%
canvas-idle: style recalc duration 9ms 5ms -45% z=-6.6
canvas-idle: layout count 0 0 +0%
canvas-idle: style recalc count 9 11 +22% z=-0.3
canvas-idle: task duration 534ms 318ms -40% z=-2.5
canvas-idle: script duration 21ms 11ms -49% z=-6.4
canvas-idle: TBT 0ms 0ms +0%
canvas-idle: heap used 66.6 MB 66.5 MB -0%
canvas-idle: DOM nodes 18 22 +22% z=-0.5
canvas-idle: event listeners 4 6 +50% z=-1.2
canvas-mouse-sweep: avg frame time 17ms 17ms +0% z=-0.9
canvas-mouse-sweep: p95 frame time 17ms 17ms +0%
canvas-mouse-sweep: layout duration 4ms 2ms -34% z=-6.1
canvas-mouse-sweep: style recalc duration 39ms 20ms -48% z=-7.1
canvas-mouse-sweep: layout count 12 12 +0%
canvas-mouse-sweep: style recalc count 75 72 -4% z=-2.8
canvas-mouse-sweep: task duration 943ms 526ms -44% z=-5.8
canvas-mouse-sweep: script duration 130ms 67ms -49% z=-10.6
canvas-mouse-sweep: TBT 0ms 0ms +0%
canvas-mouse-sweep: heap used 50.0 MB 60.7 MB +21%
canvas-mouse-sweep: DOM nodes 56 55 -2% z=-2.8
canvas-mouse-sweep: event listeners 4 4 +0% z=-1.1
canvas-zoom-sweep: avg frame time 17ms 17ms +0% z=-0.3
canvas-zoom-sweep: p95 frame time 17ms 17ms +0%
canvas-zoom-sweep: layout duration 1ms 1ms -4% z=-1.8
canvas-zoom-sweep: style recalc duration 18ms 11ms -42% z=-5.6
canvas-zoom-sweep: layout count 6 6 +0%
canvas-zoom-sweep: style recalc count 31 31 -2% z=-1.7
canvas-zoom-sweep: task duration 390ms 249ms -36% z=-3.4
canvas-zoom-sweep: script duration 21ms 12ms -43% z=-5.0
canvas-zoom-sweep: TBT 0ms 0ms +0%
canvas-zoom-sweep: heap used 69.5 MB 69.1 MB -1%
canvas-zoom-sweep: DOM nodes 77 78 +1% z=-1.6
canvas-zoom-sweep: event listeners 19 19 +0% z=-0.9
dom-widget-clipping: avg frame time 17ms 17ms +0% z=0.1
dom-widget-clipping: p95 frame time 17ms 17ms +0%
dom-widget-clipping: layout duration 0ms 0ms +0%
dom-widget-clipping: style recalc duration 8ms 5ms -43% z=-6.7
dom-widget-clipping: layout count 0 0 +0%
dom-widget-clipping: style recalc count 11 12 +9% z=-2.2
dom-widget-clipping: task duration 386ms 240ms -38% z=-7.6
dom-widget-clipping: script duration 62ms 31ms -50% z=-11.3
dom-widget-clipping: TBT 0ms 0ms +0%
dom-widget-clipping: heap used 50.6 MB 49.1 MB -3%
dom-widget-clipping: DOM nodes 18 20 +11% z=-1.5
dom-widget-clipping: event listeners 2 2 +0% variance too high
large-graph-idle: avg frame time 17ms 17ms +0% z=-0.2
large-graph-idle: p95 frame time 17ms 17ms -1%
large-graph-idle: layout duration 0ms 0ms +0%
large-graph-idle: style recalc duration 9ms 5ms -46% z=-7.2
large-graph-idle: layout count 0 0 +0%
large-graph-idle: style recalc count 9 11 +17% z=-3.5
large-graph-idle: task duration 702ms 457ms -35% z=-1.6
large-graph-idle: script duration 110ms 53ms -52% z=-4.7
large-graph-idle: TBT 0ms 0ms +0%
large-graph-idle: heap used 63.5 MB 64.5 MB +2%
large-graph-idle: DOM nodes -281 -279 -1% z=-336.0
large-graph-idle: event listeners -149 -162 +9% z=-30.8
large-graph-pan: avg frame time 17ms 17ms -0% z=-0.2
large-graph-pan: p95 frame time 17ms 17ms +0%
large-graph-pan: layout duration 0ms 0ms +0%
large-graph-pan: style recalc duration 14ms 11ms -26% z=-8.3
large-graph-pan: layout count 0 0 +0%
large-graph-pan: style recalc count 69 69 -1% z=-1.7
large-graph-pan: task duration 1370ms 850ms -38% z=-5.4
large-graph-pan: script duration 469ms 264ms -44% z=-7.3
large-graph-pan: TBT 0ms 0ms +0%
large-graph-pan: heap used 62.5 MB 59.0 MB -6%
large-graph-pan: DOM nodes -283 -283 -0% z=-182.7
large-graph-pan: event listeners -149 -163 +9% z=-202.8
large-graph-zoom: avg frame time 17ms 17ms -0%
large-graph-zoom: p95 frame time 17ms 17ms -0%
large-graph-zoom: layout duration 7ms 6ms -14%
large-graph-zoom: style recalc duration 15ms 13ms -13%
large-graph-zoom: layout count 60 60 +0%
large-graph-zoom: style recalc count 65 67 +3%
large-graph-zoom: task duration 1610ms 981ms -39%
large-graph-zoom: script duration 573ms 320ms -44%
large-graph-zoom: TBT 0ms 0ms +0%
large-graph-zoom: heap used 67.6 MB 80.2 MB +19%
large-graph-zoom: DOM nodes -287 18 -106%
large-graph-zoom: event listeners -153 8 -105%
minimap-idle: avg frame time 17ms 17ms +0% z=0.7
minimap-idle: p95 frame time 17ms 17ms +1%
minimap-idle: layout duration 0ms 0ms +0%
minimap-idle: style recalc duration 8ms 5ms -41% z=-5.7
minimap-idle: layout count 0 0 +0%
minimap-idle: style recalc count 8 10 +19% z=-0.1
minimap-idle: task duration 728ms 480ms -34% z=-1.0
minimap-idle: script duration 120ms 58ms -52% z=-4.1
minimap-idle: TBT 0ms 0ms +0%
minimap-idle: heap used 64.1 MB 64.7 MB +1%
minimap-idle: DOM nodes -284 -282 -1% z=-220.2
minimap-idle: event listeners -179 -163 -9% z=-253.8
subgraph-dom-widget-clipping: avg frame time 17ms 17ms +0% z=-0.4
subgraph-dom-widget-clipping: p95 frame time 17ms 17ms -0%
subgraph-dom-widget-clipping: layout duration 0ms 0ms +0%
subgraph-dom-widget-clipping: style recalc duration 11ms 7ms -39% z=-6.6
subgraph-dom-widget-clipping: layout count 0 0 +0%
subgraph-dom-widget-clipping: style recalc count 47 48 +2% z=0.1
subgraph-dom-widget-clipping: task duration 397ms 249ms -37% z=-7.0
subgraph-dom-widget-clipping: script duration 118ms 66ms -44% z=-9.9
subgraph-dom-widget-clipping: TBT 0ms 0ms +0%
subgraph-dom-widget-clipping: heap used 51.3 MB 50.9 MB -1%
subgraph-dom-widget-clipping: DOM nodes 20 22 +10% z=-0.2
subgraph-dom-widget-clipping: event listeners 6 8 +33% z=-1.4
subgraph-idle: avg frame time 17ms 17ms -0% z=-0.2
subgraph-idle: p95 frame time 17ms 17ms -0%
subgraph-idle: layout duration 0ms 0ms +0%
subgraph-idle: style recalc duration 8ms 5ms -31% z=-6.5
subgraph-idle: layout count 0 0 +0%
subgraph-idle: style recalc count 9 11 +22% z=0.2
subgraph-idle: task duration 480ms 350ms -27% z=-0.6
subgraph-idle: script duration 16ms 10ms -36% z=-3.8
subgraph-idle: TBT 0ms 0ms +0%
subgraph-idle: heap used 66.2 MB 55.0 MB -17%
subgraph-idle: DOM nodes 18 22 +22% z=0.1
subgraph-idle: event listeners 4 6 +50% variance too high
subgraph-mouse-sweep: avg frame time 17ms 17ms -0% z=-0.1
subgraph-mouse-sweep: p95 frame time 17ms 17ms -0%
subgraph-mouse-sweep: layout duration 5ms 3ms -41% z=-5.7
subgraph-mouse-sweep: style recalc duration 38ms 23ms -41% z=-6.0
subgraph-mouse-sweep: layout count 16 16 +0%
subgraph-mouse-sweep: style recalc count 75 77 +2% z=-1.9
subgraph-mouse-sweep: task duration 809ms 507ms -37% z=-3.7
subgraph-mouse-sweep: script duration 96ms 53ms -45% z=-7.3
subgraph-mouse-sweep: TBT 0ms 0ms +0%
subgraph-mouse-sweep: heap used 57.1 MB 57.1 MB +0%
subgraph-mouse-sweep: DOM nodes 61 64 +4% z=-1.5
subgraph-mouse-sweep: event listeners 4 4 +0% variance too high
subgraph-transition-enter: avg frame time 17ms 17ms +0%
subgraph-transition-enter: p95 frame time 17ms 17ms +1%
subgraph-transition-enter: layout duration 13ms 8ms -37%
subgraph-transition-enter: style recalc duration 31ms 23ms -23%
subgraph-transition-enter: layout count 15 14 -7%
subgraph-transition-enter: style recalc count 19 18 -5%
subgraph-transition-enter: task duration 919ms 644ms -30%
subgraph-transition-enter: script duration 34ms 21ms -40%
subgraph-transition-enter: TBT 128ms 88ms -31%
subgraph-transition-enter: heap used 94.1 MB 95.4 MB +1%
subgraph-transition-enter: DOM nodes 13673 13673 +0%
subgraph-transition-enter: event listeners 2375 2373 -0%
viewport-pan-sweep: avg frame time 17ms 17ms +0%
viewport-pan-sweep: p95 frame time 17ms 17ms +0%
viewport-pan-sweep: layout duration 0ms 0ms +0%
viewport-pan-sweep: style recalc duration 37ms 27ms -27%
viewport-pan-sweep: layout count 0 0 +0%
viewport-pan-sweep: style recalc count 250 250 -0%
viewport-pan-sweep: task duration 4652ms 2851ms -39%
viewport-pan-sweep: script duration 1475ms 801ms -46%
viewport-pan-sweep: TBT 0ms 0ms +0%
viewport-pan-sweep: heap used 68.5 MB 66.6 MB -3%
viewport-pan-sweep: DOM nodes -282 -279 -1%
viewport-pan-sweep: event listeners -133 -133 +0%
vue-large-graph-idle: avg frame time 18ms 17ms -6%
vue-large-graph-idle: p95 frame time 17ms 17ms -0%
vue-large-graph-idle: layout duration 0ms 0ms +0%
vue-large-graph-idle: style recalc duration 0ms 0ms +0%
vue-large-graph-idle: layout count 0 0 +0%
vue-large-graph-idle: style recalc count 0 0 +0%
vue-large-graph-idle: task duration 17346ms 10582ms -39%
vue-large-graph-idle: script duration 602ms 366ms -39%
vue-large-graph-idle: TBT 0ms 0ms +0%
vue-large-graph-idle: heap used 158.9 MB 160.0 MB +1%
vue-large-graph-idle: DOM nodes -8312 -8312 +0%
vue-large-graph-idle: event listeners -16385 -16389 +0%
vue-large-graph-pan: avg frame time 18ms 17ms -8%
vue-large-graph-pan: p95 frame time 17ms 17ms +1%
vue-large-graph-pan: layout duration 0ms 0ms +0%
vue-large-graph-pan: style recalc duration 18ms 14ms -27%
vue-large-graph-pan: layout count 0 0 +0%
vue-large-graph-pan: style recalc count 145 66 -54%
vue-large-graph-pan: task duration 21007ms 12974ms -38%
vue-large-graph-pan: script duration 895ms 661ms -26%
vue-large-graph-pan: TBT 324ms 0ms -100%
vue-large-graph-pan: heap used 156.6 MB 157.2 MB +0%
vue-large-graph-pan: DOM nodes -8312 -8312 +0%
vue-large-graph-pan: event listeners -16381 -16388 +0%
workflow-execution: avg frame time 17ms 17ms +0% z=0.6
workflow-execution: p95 frame time 17ms 17ms +0%
workflow-execution: layout duration 1ms 1ms +3% z=-5.4
workflow-execution: style recalc duration 17ms 13ms -21% z=-5.0
workflow-execution: layout count 3 3 +0% z=-3.6
workflow-execution: style recalc count 12 15 +21% z=-1.6
workflow-execution: task duration 103ms 83ms -20% z=-3.7
workflow-execution: script duration 9ms 7ms -18% z=-7.3
workflow-execution: TBT 0ms 0ms +0%
workflow-execution: heap used 65.1 MB 65.2 MB +0%
workflow-execution: DOM nodes 121 131 +8% z=-4.3
workflow-execution: event listeners 97 98 +1% z=10.6
Historical variance (last 15 runs)
Metric μ σ CV
canvas-idle: avg frame time 17ms 0ms 0.0%
canvas-idle: layout duration 0ms 0ms 0.0%
canvas-idle: style recalc duration 11ms 1ms 8.2%
canvas-idle: layout count 0 0 0.0%
canvas-idle: style recalc count 11 1 5.0%
canvas-idle: task duration 395ms 31ms 7.9%
canvas-idle: script duration 25ms 2ms 8.8%
canvas-idle: TBT 0ms 0ms 0.0%
canvas-idle: DOM nodes 23 1 5.6%
canvas-idle: event listeners 12 5 40.9%
canvas-mouse-sweep: avg frame time 17ms 0ms 0.0%
canvas-mouse-sweep: layout duration 4ms 0ms 5.4%
canvas-mouse-sweep: style recalc duration 43ms 3ms 7.4%
canvas-mouse-sweep: layout count 12 0 0.0%
canvas-mouse-sweep: style recalc count 79 2 3.0%
canvas-mouse-sweep: task duration 865ms 58ms 6.7%
canvas-mouse-sweep: script duration 136ms 6ms 4.8%
canvas-mouse-sweep: TBT 0ms 0ms 0.0%
canvas-mouse-sweep: DOM nodes 62 3 4.2%
canvas-mouse-sweep: event listeners 8 4 49.4%
canvas-zoom-sweep: avg frame time 17ms 0ms 0.0%
canvas-zoom-sweep: layout duration 1ms 0ms 7.0%
canvas-zoom-sweep: style recalc duration 19ms 2ms 8.0%
canvas-zoom-sweep: layout count 6 0 0.0%
canvas-zoom-sweep: style recalc count 31 0 1.5%
canvas-zoom-sweep: task duration 327ms 23ms 7.1%
canvas-zoom-sweep: script duration 27ms 3ms 11.1%
canvas-zoom-sweep: TBT 0ms 0ms 0.0%
canvas-zoom-sweep: DOM nodes 79 1 1.0%
canvas-zoom-sweep: event listeners 24 5 21.8%
dom-widget-clipping: avg frame time 17ms 0ms 0.0%
dom-widget-clipping: layout duration 0ms 0ms 0.0%
dom-widget-clipping: style recalc duration 10ms 1ms 8.0%
dom-widget-clipping: layout count 0 0 0.0%
dom-widget-clipping: style recalc count 13 0 3.8%
dom-widget-clipping: task duration 365ms 16ms 4.5%
dom-widget-clipping: script duration 68ms 3ms 4.8%
dom-widget-clipping: TBT 0ms 0ms 0.0%
dom-widget-clipping: DOM nodes 22 1 6.4%
dom-widget-clipping: event listeners 8 6 81.2%
large-graph-idle: avg frame time 17ms 0ms 0.0%
large-graph-idle: layout duration 0ms 0ms 0.0%
large-graph-idle: style recalc duration 12ms 1ms 8.6%
large-graph-idle: layout count 0 0 0.0%
large-graph-idle: style recalc count 12 0 2.7%
large-graph-idle: task duration 542ms 54ms 10.0%
large-graph-idle: script duration 102ms 11ms 10.3%
large-graph-idle: TBT 0ms 0ms 0.0%
large-graph-idle: DOM nodes 25 1 3.7%
large-graph-idle: event listeners 26 6 23.2%
large-graph-pan: avg frame time 17ms 0ms 0.0%
large-graph-pan: layout duration 0ms 0ms 0.0%
large-graph-pan: style recalc duration 17ms 1ms 4.6%
large-graph-pan: layout count 0 0 0.0%
large-graph-pan: style recalc count 70 1 0.9%
large-graph-pan: task duration 1082ms 43ms 4.0%
large-graph-pan: script duration 408ms 20ms 4.8%
large-graph-pan: TBT 0ms 0ms 0.0%
large-graph-pan: DOM nodes 19 2 8.7%
large-graph-pan: event listeners 5 1 16.8%
minimap-idle: avg frame time 17ms 0ms 0.0%
minimap-idle: layout duration 0ms 0ms 0.0%
minimap-idle: style recalc duration 10ms 1ms 8.6%
minimap-idle: layout count 0 0 0.0%
minimap-idle: style recalc count 10 1 7.1%
minimap-idle: task duration 527ms 47ms 9.0%
minimap-idle: script duration 98ms 10ms 10.1%
minimap-idle: TBT 0ms 0ms 0.0%
minimap-idle: DOM nodes 19 1 7.1%
minimap-idle: event listeners 5 1 14.4%
subgraph-dom-widget-clipping: avg frame time 17ms 0ms 0.0%
subgraph-dom-widget-clipping: layout duration 0ms 0ms 0.0%
subgraph-dom-widget-clipping: style recalc duration 13ms 1ms 7.4%
subgraph-dom-widget-clipping: layout count 0 0 0.0%
subgraph-dom-widget-clipping: style recalc count 48 1 1.2%
subgraph-dom-widget-clipping: task duration 378ms 18ms 4.9%
subgraph-dom-widget-clipping: script duration 128ms 6ms 4.9%
subgraph-dom-widget-clipping: TBT 0ms 0ms 0.0%
subgraph-dom-widget-clipping: DOM nodes 22 1 5.0%
subgraph-dom-widget-clipping: event listeners 16 6 36.0%
subgraph-idle: avg frame time 17ms 0ms 0.0%
subgraph-idle: layout duration 0ms 0ms 0.0%
subgraph-idle: style recalc duration 10ms 1ms 7.5%
subgraph-idle: layout count 0 0 0.0%
subgraph-idle: style recalc count 11 1 6.0%
subgraph-idle: task duration 370ms 31ms 8.5%
subgraph-idle: script duration 20ms 3ms 13.2%
subgraph-idle: TBT 0ms 0ms 0.0%
subgraph-idle: DOM nodes 22 1 6.9%
subgraph-idle: event listeners 10 7 64.5%
subgraph-mouse-sweep: avg frame time 17ms 0ms 0.0%
subgraph-mouse-sweep: layout duration 5ms 0ms 6.8%
subgraph-mouse-sweep: style recalc duration 42ms 3ms 7.8%
subgraph-mouse-sweep: layout count 16 0 0.0%
subgraph-mouse-sweep: style recalc count 80 2 2.4%
subgraph-mouse-sweep: task duration 766ms 69ms 9.0%
subgraph-mouse-sweep: script duration 101ms 7ms 6.5%
subgraph-mouse-sweep: TBT 0ms 0ms 0.0%
subgraph-mouse-sweep: DOM nodes 67 2 3.3%
subgraph-mouse-sweep: event listeners 8 4 52.6%
workflow-execution: avg frame time 17ms 0ms 0.0%
workflow-execution: layout duration 2ms 0ms 9.4%
workflow-execution: style recalc duration 24ms 2ms 9.1%
workflow-execution: layout count 5 1 11.0%
workflow-execution: style recalc count 18 2 11.5%
workflow-execution: task duration 123ms 11ms 8.8%
workflow-execution: script duration 29ms 3ms 10.2%
workflow-execution: TBT 0ms 0ms 0.0%
workflow-execution: DOM nodes 161 7 4.4%
workflow-execution: event listeners 52 4 8.4%
Trend (last 15 commits on main)
Metric Trend Dir Latest
canvas-idle: avg frame time ▆▃▆▁▆▃▆█▆▆▄▃▃▄▃ ➡️ 17ms
canvas-idle: p95 frame time ➡️ NaNms
canvas-idle: layout duration ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
canvas-idle: style recalc duration ▇▇▆▆▃█▄▃▄▃▇▄▁▆▇ ➡️ 11ms
canvas-idle: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0
canvas-idle: style recalc count █▃▅▂▅▆▃▁▂▁▂▅▆▅▆ ➡️ 12
canvas-idle: task duration ▃▃▃▆▂▃▃▅▆▂█▃▁▃▃ ➡️ 391ms
canvas-idle: script duration ▄▃▅▇▂▅▃▆▇▅█▄▁▅▆ ➡️ 27ms
canvas-idle: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
canvas-idle: heap used ➡️ NaN MB
canvas-idle: DOM nodes █▇▆▅▃▇▃▁▂▂▅▆▆▆▇ ➡️ 24
canvas-idle: event listeners ▅█▅▄▁▅▁▁▁▄▅▅▁▅▄ 📉 11
canvas-mouse-sweep: avg frame time ▆█▆▃▁▃▁▆▆▁▃▆▆▃▃ ➡️ 17ms
canvas-mouse-sweep: p95 frame time ➡️ NaNms
canvas-mouse-sweep: layout duration ▁▃▂▄▁▂▁▃▆▂█▇▆▄▃ ➡️ 4ms
canvas-mouse-sweep: style recalc duration ▄▄▂▄▁▂▃▃▅▄█▆▂▄▄ ➡️ 43ms
canvas-mouse-sweep: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 12
canvas-mouse-sweep: style recalc count █▅▄▃▂▂▁▄▄▅▆▅▂▇▄ ➡️ 79
canvas-mouse-sweep: task duration █▆▄▂▂▃▂▄▄▅█▆▁▆▄ ➡️ 868ms
canvas-mouse-sweep: script duration ▄▅▄▆▄▆▆▆▅▅█▆▁▅▆ ➡️ 139ms
canvas-mouse-sweep: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
canvas-mouse-sweep: heap used ➡️ NaN MB
canvas-mouse-sweep: DOM nodes █▅▃▃▁▂▂▃▂▄▆▅▃▅▅ ➡️ 64
canvas-mouse-sweep: event listeners █▁▁▁▁▁▇▁▁▁██▇▁█ 📈 13
canvas-zoom-sweep: avg frame time ▅▅█▄▅▁▁▁▅▁▁▅▄▅▁ ➡️ 17ms
canvas-zoom-sweep: p95 frame time ➡️ NaNms
canvas-zoom-sweep: layout duration ▆▅▅▄▁▁█▅▃▅▇▆▁▂▆ ➡️ 1ms
canvas-zoom-sweep: style recalc duration ▆▅▄▆▅▃█▆▇▅▇▄▁▃▅ ➡️ 20ms
canvas-zoom-sweep: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 6
canvas-zoom-sweep: style recalc count ▁▁▃▄▆▃▆█▄▄▆▁▆▁▆ ➡️ 32
canvas-zoom-sweep: task duration ▄▂▁▇▂▂▄▅▆▃█▄▁▁▅ ➡️ 338ms
canvas-zoom-sweep: script duration ▃▃▂▇▂▂▅▇▆▅█▄▁▂▆ ➡️ 30ms
canvas-zoom-sweep: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
canvas-zoom-sweep: heap used ➡️ NaN MB
canvas-zoom-sweep: DOM nodes ▄▃▁▅█▁▃▆▄▅▅▃▃▄▃ ➡️ 79
canvas-zoom-sweep: event listeners ▁▁▂▅█▂▁▅▁▅▅▄▁▅▁ ➡️ 19
dom-widget-clipping: avg frame time ▂▄▅▅▂▄█▇▅▇▇▅▅▁▇ ➡️ 17ms
dom-widget-clipping: p95 frame time ➡️ NaNms
dom-widget-clipping: layout duration ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
dom-widget-clipping: style recalc duration ▆▆▂▆▄▃██▄▁▆▇▆▃▅ ➡️ 10ms
dom-widget-clipping: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0
dom-widget-clipping: style recalc count ▇█▅█▅▄█▇▇▁▇▄▇▂▅ ➡️ 13
dom-widget-clipping: task duration ▃▃▁▅▄▃▅▆▅▂▇█▁▅▅ ➡️ 371ms
dom-widget-clipping: script duration ▅▄▄▆▆▅▇▇▆▃█▇▁▇▇ ➡️ 71ms
dom-widget-clipping: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
dom-widget-clipping: heap used ➡️ NaN MB
dom-widget-clipping: DOM nodes ▇▇▄▇▅▄█▇▅▁▅▄▇▃▄ ➡️ 21
dom-widget-clipping: event listeners ▅▅▅▅▁▅██▁▁▁▁█▁▁ 📉 2
large-graph-idle: avg frame time ▅▅▅▅▅▂▁▂▄▅▄▂▂▅█ ➡️ 17ms
large-graph-idle: p95 frame time ➡️ NaNms
large-graph-idle: layout duration ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
large-graph-idle: style recalc duration ▅▅▅▆▄▅▃▄▅▅▆█▁▄▆ ➡️ 13ms
large-graph-idle: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0
large-graph-idle: style recalc count █▆█▃▃▁▃▆▃▆▆▃▆██ ➡️ 12
large-graph-idle: task duration ▂▃▂▆▂▃▃▇▅▃██▁▂▅ ➡️ 569ms
large-graph-idle: script duration ▄▅▄▆▄▅▅▇▆▅█▆▁▃▆ ➡️ 110ms
large-graph-idle: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
large-graph-idle: heap used ➡️ NaN MB
large-graph-idle: DOM nodes ▆█▅▂▅▃▁▂▃▅▅▆▂▆▅ ➡️ 25
large-graph-idle: event listeners ███▇██▄▁▄▇▇█▂█▇ ➡️ 29
large-graph-pan: avg frame time ▆▃▃▆█▃▁█▆▆▆▆█▁▆ ➡️ 17ms
large-graph-pan: p95 frame time ➡️ NaNms
large-graph-pan: layout duration ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
large-graph-pan: style recalc duration ▃▂▄▄▁▅▂▂▁▄▄█▃▁▂ ➡️ 17ms
large-graph-pan: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0
large-graph-pan: style recalc count ▆▃█▂▃▂▂▂▁▇▅▃█▆▃ ➡️ 69
large-graph-pan: task duration ▄▃▄▆▄▄▄▆▄▄█▆▁▂▅ ➡️ 1100ms
large-graph-pan: script duration ▅▄▅▆▆▅▄▆▄▅█▄▁▄▅ ➡️ 413ms
large-graph-pan: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
large-graph-pan: heap used ➡️ NaN MB
large-graph-pan: DOM nodes ▅▃▆▂▄▁▃▁▁▅▁▂█▅▂ ➡️ 18
large-graph-pan: event listeners █▆█▁▁▆▁▁▃▆▁▃██▃ ➡️ 5
minimap-idle: avg frame time ▃▆▆▃█▁█▆▆▃▃▆█▆█ ➡️ 17ms
minimap-idle: p95 frame time ➡️ NaNms
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 ▃▄▁▅▁▃▄▅▇▃█▅▁▁▅ ➡️ 547ms
minimap-idle: script duration ▄▆▃▇▃▅▆▆▇▅█▅▁▃▆ ➡️ 106ms
minimap-idle: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
minimap-idle: heap used ➡️ NaN MB
minimap-idle: DOM nodes ▃▅▂▄█▃▆▁▂▅▂▁▅▆▃ ➡️ 19
minimap-idle: event listeners ▃▃▆▁▁▁▃▁▁▆▁▃█▆▁ ➡️ 4
subgraph-dom-widget-clipping: avg frame time ▅▄▄▄▄▄█▄▄▄▃▁▆▃▃ ➡️ 17ms
subgraph-dom-widget-clipping: p95 frame time ➡️ NaNms
subgraph-dom-widget-clipping: layout duration ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
subgraph-dom-widget-clipping: style recalc duration ▂▄▃▅▅▃▂▅▇▃▄█▁▄▆ ➡️ 14ms
subgraph-dom-widget-clipping: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0
subgraph-dom-widget-clipping: style recalc count ▇█▆▃▆▃▁▆█▇▃▆▇█▅ ➡️ 48
subgraph-dom-widget-clipping: task duration ▂▃▃▆▅▅▂▅█▂▆█▁▂▇ ➡️ 398ms
subgraph-dom-widget-clipping: script duration ▃▃▃▄▅▅▂▄█▂▅▇▁▂▅ ➡️ 131ms
subgraph-dom-widget-clipping: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
subgraph-dom-widget-clipping: heap used ➡️ NaN MB
subgraph-dom-widget-clipping: DOM nodes ▅▇▅▂▅▂▁▅▅▅▁▇▅█▄ ➡️ 22
subgraph-dom-widget-clipping: event listeners ▅▅▅▂▅▁▅██▁▁█▅█▅ 📈 16
subgraph-idle: avg frame time ▆▆█▁▆▃▆▆▆▃▆▁▃▆█ ➡️ 17ms
subgraph-idle: p95 frame time ➡️ NaNms
subgraph-idle: layout duration ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
subgraph-idle: style recalc duration ▁▇▃▆▂▄▂▃▃▆▆▄▃▇█ ➡️ 12ms
subgraph-idle: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0
subgraph-idle: style recalc count ▃▆▃▃▂▅▁▂▁▆▃▃██▇ ➡️ 12
subgraph-idle: task duration ▁▃▁▇▁▁▃▆▅▂█▅▁▁▄ ➡️ 378ms
subgraph-idle: script duration ▁▃▂▇▁▂▃▇▆▂█▅▂▁▅ ➡️ 22ms
subgraph-idle: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
subgraph-idle: heap used ➡️ NaN MB
subgraph-idle: DOM nodes ▃▅▃▂▁▄▁▂▁▅▃▂▇█▇ ➡️ 24
subgraph-idle: event listeners ▁▅▁▁▁▁▁▁▁▅▄▁███ 📈 21
subgraph-mouse-sweep: avg frame time ▅▄▁▃▃▄▆▄▆▃▃█▁▃▃ ➡️ 17ms
subgraph-mouse-sweep: p95 frame time ➡️ NaNms
subgraph-mouse-sweep: layout duration ▁▄▄▄▃▃▅▅▅▂█▇▂▃▆ ➡️ 5ms
subgraph-mouse-sweep: style recalc duration ▃▂▄▅▂▃▄▅█▃█▆▁▂▅ ➡️ 43ms
subgraph-mouse-sweep: layout count ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 16
subgraph-mouse-sweep: style recalc count ▅▂▅▅▁▄▃▅█▅▆▄▂▄▅ ➡️ 81
subgraph-mouse-sweep: task duration ▃▂▄▅▂▄▄▅▇▄█▆▁▃▅ ➡️ 785ms
subgraph-mouse-sweep: script duration ▄▅▄▇▅▅▆▇▆▅██▁▄▆ ➡️ 105ms
subgraph-mouse-sweep: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
subgraph-mouse-sweep: heap used ➡️ NaN MB
subgraph-mouse-sweep: DOM nodes ▅▁▄▅▁▄▃▃█▅▅▄▂▅▃ ➡️ 66
subgraph-mouse-sweep: event listeners ▇▁▂▇▁▂▂▂█▇▂▂▇▇▂ 📈 5
workflow-execution: avg frame time ▆▆▆▄▆▆▃▄▁▄█▆▅▄▆ ➡️ 17ms
workflow-execution: p95 frame time ➡️ NaNms
workflow-execution: layout duration ▁▆▁▃▂▄▃▂▃▃▅█▄▂▅ ➡️ 2ms
workflow-execution: style recalc duration ▃▇▅▇▁▅▆▇█▁██▂▄▆ ➡️ 25ms
workflow-execution: layout count ▁█▂▃▂▃▃▁▃▃▄▃▂▃▂ ➡️ 5
workflow-execution: style recalc count ▃█▅▇▁▄▅▆▅▅▅▅▄▄▂ ➡️ 15
workflow-execution: task duration ▂▅▄▅▁▄▆▆▆▁▇█▁▃▃ ➡️ 120ms
workflow-execution: script duration ▄▃▄▄▃▅▄▅▆▂▇█▁▃▄ ➡️ 29ms
workflow-execution: TBT ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ➡️ 0ms
workflow-execution: heap used ➡️ NaN MB
workflow-execution: DOM nodes ▂█▃▆▁▄▃▅▃█▃▃▄▃▁ ➡️ 152
workflow-execution: event listeners ▅███▁▅███▁██▅█▅ ➡️ 49
Raw data
{
  "timestamp": "2026-08-04T22:24:39.233Z",
  "gitSha": "33ce454688ba0c3bb6364d9aa8834afec83845e4",
  "branch": "ci/bump-cursor-review",
  "measurements": [
    {
      "name": "canvas-idle",
      "durationMs": 2019.4439999999645,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 5.158000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 310.496,
      "heapDeltaBytes": 5964400,
      "heapUsedBytes": 69994116,
      "domNodes": 22,
      "jsHeapTotalBytes": 24379392,
      "scriptDurationMs": 10.427999999999999,
      "eventListeners": 6,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "canvas-idle",
      "durationMs": 2005.1369999999906,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 4.779,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 325.75,
      "heapDeltaBytes": 5417368,
      "heapUsedBytes": 69386708,
      "domNodes": 22,
      "jsHeapTotalBytes": 24903680,
      "scriptDurationMs": 11.407,
      "eventListeners": 6,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "canvas-mouse-sweep",
      "durationMs": 1696.8650000000025,
      "styleRecalcs": 71,
      "styleRecalcDurationMs": 20.380999999999997,
      "layouts": 12,
      "layoutDurationMs": 2.6,
      "taskDurationMs": 526.346,
      "heapDeltaBytes": -28640,
      "heapUsedBytes": 64031048,
      "domNodes": 52,
      "jsHeapTotalBytes": 25165824,
      "scriptDurationMs": 68.878,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333335,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "canvas-mouse-sweep",
      "durationMs": 1731.047999999987,
      "styleRecalcs": 73,
      "styleRecalcDurationMs": 19.795,
      "layouts": 12,
      "layoutDurationMs": 2.247,
      "taskDurationMs": 526.138,
      "heapDeltaBytes": -685144,
      "heapUsedBytes": 63343332,
      "domNodes": 58,
      "jsHeapTotalBytes": 25427968,
      "scriptDurationMs": 65.058,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "canvas-zoom-sweep",
      "durationMs": 1681.695999999988,
      "styleRecalcs": 30,
      "styleRecalcDurationMs": 10.315,
      "layouts": 6,
      "layoutDurationMs": 0.5630000000000002,
      "taskDurationMs": 246.232,
      "heapDeltaBytes": 8320972,
      "heapUsedBytes": 72281228,
      "domNodes": 79,
      "jsHeapTotalBytes": 24903680,
      "scriptDurationMs": 11.905000000000001,
      "eventListeners": 19,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333335,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "canvas-zoom-sweep",
      "durationMs": 1717.5040000000763,
      "styleRecalcs": 31,
      "styleRecalcDurationMs": 10.687999999999999,
      "layouts": 6,
      "layoutDurationMs": 0.5589999999999999,
      "taskDurationMs": 250.99899999999997,
      "heapDeltaBytes": 8583024,
      "heapUsedBytes": 72666640,
      "domNodes": 77,
      "jsHeapTotalBytes": 24903680,
      "scriptDurationMs": 12.345,
      "eventListeners": 19,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.699999999999818
    },
    {
      "name": "dom-widget-clipping",
      "durationMs": 397.1809999999891,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 3.927999999999999,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 235.21600000000004,
      "heapDeltaBytes": -12493108,
      "heapUsedBytes": 51451768,
      "domNodes": 18,
      "jsHeapTotalBytes": 26476544,
      "scriptDurationMs": 31.142,
      "eventListeners": 2,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "dom-widget-clipping",
      "durationMs": 371.92400000003545,
      "styleRecalcs": 13,
      "styleRecalcDurationMs": 5.131,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 244.72899999999998,
      "heapDeltaBytes": -12403516,
      "heapUsedBytes": 51593496,
      "domNodes": 22,
      "jsHeapTotalBytes": 27000832,
      "scriptDurationMs": 31.188,
      "eventListeners": 2,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.799999999999727
    },
    {
      "name": "large-graph-idle",
      "durationMs": 2017.8869999999733,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 5.019999999999999,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 457.48199999999997,
      "heapDeltaBytes": 4518536,
      "heapUsedBytes": 66386884,
      "domNodes": -278,
      "jsHeapTotalBytes": 2727936,
      "scriptDurationMs": 52.652,
      "eventListeners": -177,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "large-graph-idle",
      "durationMs": 2014.0729999999394,
      "styleRecalcs": 10,
      "styleRecalcDurationMs": 4.415000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 456.3260000000001,
      "heapDeltaBytes": 7084964,
      "heapUsedBytes": 68882216,
      "domNodes": -280,
      "jsHeapTotalBytes": 2727936,
      "scriptDurationMs": 53.275000000000006,
      "eventListeners": -147,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.699999999999818
    },
    {
      "name": "large-graph-pan",
      "durationMs": 2110.0119999999833,
      "styleRecalcs": 69,
      "styleRecalcDurationMs": 11.264000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 844.175,
      "heapDeltaBytes": 53148,
      "heapUsedBytes": 63117916,
      "domNodes": -282,
      "jsHeapTotalBytes": 3182592,
      "scriptDurationMs": 261.202,
      "eventListeners": -147,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333332,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "large-graph-pan",
      "durationMs": 2062.860999999998,
      "styleRecalcs": 68,
      "styleRecalcDurationMs": 10.006999999999998,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 855.168,
      "heapDeltaBytes": -2618468,
      "heapUsedBytes": 60516496,
      "domNodes": -283,
      "jsHeapTotalBytes": 5017600,
      "scriptDurationMs": 266.066,
      "eventListeners": -179,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.699999999999818
    },
    {
      "name": "large-graph-zoom",
      "durationMs": 3072.0209999999497,
      "styleRecalcs": 67,
      "styleRecalcDurationMs": 13.083999999999998,
      "layouts": 60,
      "layoutDurationMs": 6.473,
      "taskDurationMs": 964.6810000000002,
      "heapDeltaBytes": 22934176,
      "heapUsedBytes": 85002252,
      "domNodes": 18,
      "jsHeapTotalBytes": 7077888,
      "scriptDurationMs": 312.97400000000005,
      "eventListeners": 8,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.699999999999818
    },
    {
      "name": "large-graph-zoom",
      "durationMs": 3073.20900000002,
      "styleRecalcs": 67,
      "styleRecalcDurationMs": 12.402,
      "layouts": 60,
      "layoutDurationMs": 6.200000000000001,
      "taskDurationMs": 997.6230000000002,
      "heapDeltaBytes": 20971800,
      "heapUsedBytes": 83173052,
      "domNodes": 18,
      "jsHeapTotalBytes": 8388608,
      "scriptDurationMs": 327.436,
      "eventListeners": 8,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "minimap-idle",
      "durationMs": 2013.5539999999992,
      "styleRecalcs": 9,
      "styleRecalcDurationMs": 4.408,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 493.3599999999999,
      "heapDeltaBytes": 7213320,
      "heapUsedBytes": 68024688,
      "domNodes": -282,
      "jsHeapTotalBytes": 3252224,
      "scriptDurationMs": 58.827000000000005,
      "eventListeners": -149,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "minimap-idle",
      "durationMs": 1994.8170000000118,
      "styleRecalcs": 10,
      "styleRecalcDurationMs": 5.318,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 467.33799999999997,
      "heapDeltaBytes": 6735408,
      "heapUsedBytes": 67652092,
      "domNodes": -282,
      "jsHeapTotalBytes": 3514368,
      "scriptDurationMs": 57.309,
      "eventListeners": -177,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.670000000000012,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "subgraph-dom-widget-clipping",
      "durationMs": 376.7639999999801,
      "styleRecalcs": 48,
      "styleRecalcDurationMs": 6.328,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 250.32899999999998,
      "heapDeltaBytes": -10825780,
      "heapUsedBytes": 53397816,
      "domNodes": 22,
      "jsHeapTotalBytes": 25690112,
      "scriptDurationMs": 65.411,
      "eventListeners": 8,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000273
    },
    {
      "name": "subgraph-dom-widget-clipping",
      "durationMs": 371.1439999999584,
      "styleRecalcs": 48,
      "styleRecalcDurationMs": 6.745000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 248.01800000000003,
      "heapDeltaBytes": -10725376,
      "heapUsedBytes": 53377752,
      "domNodes": 22,
      "jsHeapTotalBytes": 26214400,
      "scriptDurationMs": 65.943,
      "eventListeners": 8,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333332,
      "p95FrameDurationMs": 16.700000000000273
    },
    {
      "name": "subgraph-idle",
      "durationMs": 2008.4590000000162,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 4.970000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 377.83500000000004,
      "heapDeltaBytes": -18124712,
      "heapUsedBytes": 46004448,
      "domNodes": 22,
      "jsHeapTotalBytes": 22786048,
      "scriptDurationMs": 10.068999999999997,
      "eventListeners": 6,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "subgraph-idle",
      "durationMs": 1989.4729999999754,
      "styleRecalcs": 11,
      "styleRecalcDurationMs": 5.6240000000000006,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 322.334,
      "heapDeltaBytes": 5195508,
      "heapUsedBytes": 69272732,
      "domNodes": 22,
      "jsHeapTotalBytes": 25165824,
      "scriptDurationMs": 9.987,
      "eventListeners": 6,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333335,
      "p95FrameDurationMs": 16.699999999999818
    },
    {
      "name": "subgraph-mouse-sweep",
      "durationMs": 1675.3389999999513,
      "styleRecalcs": 77,
      "styleRecalcDurationMs": 20.455000000000002,
      "layouts": 16,
      "layoutDurationMs": 2.4229999999999996,
      "taskDurationMs": 492.67900000000003,
      "heapDeltaBytes": -4103524,
      "heapUsedBytes": 59908632,
      "domNodes": 65,
      "jsHeapTotalBytes": 25427968,
      "scriptDurationMs": 50.54900000000001,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.66333333333335,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "subgraph-mouse-sweep",
      "durationMs": 1669.3390000000363,
      "styleRecalcs": 76,
      "styleRecalcDurationMs": 24.63,
      "layouts": 16,
      "layoutDurationMs": 3.299,
      "taskDurationMs": 520.91,
      "heapDeltaBytes": -4290796,
      "heapUsedBytes": 59892080,
      "domNodes": 62,
      "jsHeapTotalBytes": 25165824,
      "scriptDurationMs": 55.536,
      "eventListeners": 4,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "subgraph-transition-enter",
      "durationMs": 882.5580000000173,
      "styleRecalcs": 18,
      "styleRecalcDurationMs": 23.41200000000001,
      "layouts": 14,
      "layoutDurationMs": 8.025999999999998,
      "taskDurationMs": 644.0780000000002,
      "heapDeltaBytes": 8387976,
      "heapUsedBytes": 100061676,
      "domNodes": 13673,
      "jsHeapTotalBytes": 12320768,
      "scriptDurationMs": 20.630999999999997,
      "eventListeners": 2373,
      "totalBlockingTimeMs": 88,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.800000000000182
    },
    {
      "name": "viewport-pan-sweep",
      "durationMs": 8075.085999999999,
      "styleRecalcs": 250,
      "styleRecalcDurationMs": 24.436,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 2735.199,
      "heapDeltaBytes": 8006468,
      "heapUsedBytes": 69792800,
      "domNodes": -278,
      "jsHeapTotalBytes": 6852608,
      "scriptDurationMs": 765.83,
      "eventListeners": -133,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "viewport-pan-sweep",
      "durationMs": 8069.6590000000015,
      "styleRecalcs": 249,
      "styleRecalcDurationMs": 30.316000000000003,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 2966.8859999999995,
      "heapDeltaBytes": 8140444,
      "heapUsedBytes": 69952128,
      "domNodes": -280,
      "jsHeapTotalBytes": 7376896,
      "scriptDurationMs": 836.365,
      "eventListeners": -133,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "vue-large-graph-idle",
      "durationMs": 10052.159000000018,
      "styleRecalcs": 0,
      "styleRecalcDurationMs": 0,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 9999.762999999999,
      "heapDeltaBytes": -38273168,
      "heapUsedBytes": 168586128,
      "domNodes": -8312,
      "jsHeapTotalBytes": -9900032,
      "scriptDurationMs": 350.891,
      "eventListeners": -16389,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000728
    },
    {
      "name": "vue-large-graph-idle",
      "durationMs": 11221.919999999955,
      "styleRecalcs": 0,
      "styleRecalcDurationMs": 0,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 11163.348,
      "heapDeltaBytes": -38251896,
      "heapUsedBytes": 166998312,
      "domNodes": -8312,
      "jsHeapTotalBytes": -13312000,
      "scriptDurationMs": 380.96100000000007,
      "eventListeners": -16389,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "vue-large-graph-pan",
      "durationMs": 12693.92399999998,
      "styleRecalcs": 66,
      "styleRecalcDurationMs": 13.129000000000001,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 12676.210000000001,
      "heapDeltaBytes": -34475256,
      "heapUsedBytes": 164928512,
      "domNodes": -8312,
      "jsHeapTotalBytes": -11997184,
      "scriptDurationMs": 664.485,
      "eventListeners": -16389,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 17.223333333333237,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "vue-large-graph-pan",
      "durationMs": 13319.341000000008,
      "styleRecalcs": 66,
      "styleRecalcDurationMs": 13.886999999999983,
      "layouts": 0,
      "layoutDurationMs": 0,
      "taskDurationMs": 13272.487000000001,
      "heapDeltaBytes": -41018300,
      "heapUsedBytes": 164794416,
      "domNodes": -8312,
      "jsHeapTotalBytes": -10952704,
      "scriptDurationMs": 657.9580000000001,
      "eventListeners": -16387,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.799999999999272
    },
    {
      "name": "workflow-execution",
      "durationMs": 422.0109999999977,
      "styleRecalcs": 15,
      "styleRecalcDurationMs": 14.319,
      "layouts": 4,
      "layoutDurationMs": 1.2050000000000003,
      "taskDurationMs": 86.75,
      "heapDeltaBytes": 5385472,
      "heapUsedBytes": 68515192,
      "domNodes": 136,
      "jsHeapTotalBytes": 5242880,
      "scriptDurationMs": 8.308000000000002,
      "eventListeners": 97,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000273
    },
    {
      "name": "workflow-execution",
      "durationMs": 429.3710000000601,
      "styleRecalcs": 14,
      "styleRecalcDurationMs": 12.197,
      "layouts": 2,
      "layoutDurationMs": 0.33,
      "taskDurationMs": 79.80799999999999,
      "heapDeltaBytes": 5090696,
      "heapUsedBytes": 68220464,
      "domNodes": 125,
      "jsHeapTotalBytes": 5505024,
      "scriptDurationMs": 6.579,
      "eventListeners": 99,
      "totalBlockingTimeMs": 0,
      "frameDurationMs": 16.666666666666668,
      "p95FrameDurationMs": 16.700000000000273
    }
  ]
}

@codecov

codecov Bot commented Jul 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

@@           Coverage Diff           @@
##             main   #14224   +/-   ##
=======================================
  Coverage   79.58%   79.58%           
=======================================
  Files        1794     1794           
  Lines      116420   116420           
  Branches    32844    32835    -9     
=======================================
  Hits        92652    92652           
+ Misses      23216    23210    -6     
- Partials      552      558    +6     
Flag Coverage Δ
unit 70.94% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
see 4 files with indirect coverage changes

🚀 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.

@mattmillerai mattmillerai added the cursor-review Trigger multi-model Cursor agent review on this PR label Jul 28, 2026

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔍 Cursor Review — Consolidated panel

Triggered by @mattmillerai.

✅ No high-signal findings.

Panel: 8/8 reviewers contributed findings.

@cloud-code-bot
cloud-code-bot Bot force-pushed the ci/bump-cursor-review branch from 0a35462 to 532694d Compare July 30, 2026 23:03
@cloud-code-bot cloud-code-bot Bot changed the title ci: bump cursor-review to github-workflows@ece4c3e ci: bump cursor-review to github-workflows@3b5886b Jul 30, 2026
@cloud-code-bot
cloud-code-bot Bot force-pushed the ci/bump-cursor-review branch from 532694d to 2a03ee1 Compare July 31, 2026 04:25
@cloud-code-bot cloud-code-bot Bot changed the title ci: bump cursor-review to github-workflows@3b5886b ci: bump cursor-review to github-workflows@bcde90f Jul 31, 2026
@cloud-code-bot
cloud-code-bot Bot force-pushed the ci/bump-cursor-review branch from 2a03ee1 to 98a4f51 Compare August 4, 2026 17:35
@cloud-code-bot cloud-code-bot Bot changed the title ci: bump cursor-review to github-workflows@bcde90f ci: bump cursor-review to github-workflows@d0c6271 Aug 4, 2026
@cloud-code-bot cloud-code-bot Bot changed the title ci: bump cursor-review to github-workflows@d0c6271 ci: bump cursor-review to github-workflows@3f8f213 Aug 4, 2026
@cloud-code-bot
cloud-code-bot Bot force-pushed the ci/bump-cursor-review branch 2 times, most recently from ada3ced to 0d05da1 Compare August 4, 2026 18:16
@cloud-code-bot cloud-code-bot Bot changed the title ci: bump cursor-review to github-workflows@3f8f213 ci: bump cursor-review to github-workflows@5134b93 Aug 4, 2026
@cloud-code-bot cloud-code-bot Bot changed the title ci: bump cursor-review to github-workflows@5134b93 ci: bump cursor-review to github-workflows@be69676 Aug 4, 2026
@cloud-code-bot
cloud-code-bot Bot force-pushed the ci/bump-cursor-review branch from 0d05da1 to 0b1095e Compare August 4, 2026 22:01
@cloud-code-bot
cloud-code-bot Bot force-pushed the ci/bump-cursor-review branch from 0b1095e to 344420f Compare August 4, 2026 22:04
@cloud-code-bot cloud-code-bot Bot changed the title ci: bump cursor-review to github-workflows@be69676 ci: bump cursor-review to github-workflows@c383408 Aug 4, 2026
@christian-byrne
christian-byrne added this pull request to the merge queue Aug 8, 2026
Merged via the queue into main with commit a614d21 Aug 8, 2026
62 checks passed
@christian-byrne
christian-byrne deleted the ci/bump-cursor-review branch August 8, 2026 23:35
DrJKL pushed a commit to DrJKL/ComfyUI_frontend that referenced this pull request Aug 10, 2026
…g#14766)

Follow-up to Comfy-Org#14626.

Nobody feels addressed by what a robot opens. A sweep of open PRs found
**12 automation-authored PRs sitting unassigned**, the oldest for nearly
two weeks:

- 9 from `dependabot` (oldest Comfy-Org#13997, Jul 23)
- 2 from `comfy-pr-bot` — API-type syncs (Comfy-Org#14700, Comfy-Org#14728)
- 1 from `cloud-code-bot` (Comfy-Org#14224)

None were reachable by the existing criteria, which match labels,
`[backport ...]` titles and `version-bump-` branches — a dependency bump
has none of those. So the sweep could never have found them, no matter
how often it ran.

This treats the **author** as sufficient grounds for sheriff ownership,
and adds the matching search selectors so `collectCandidatePrs` actually
returns them.

## Trade-off worth naming

Matching is by author, not content, so a dependency bump is now sheriff
work. That is the point — these need *an owner*, not necessarily deep
review — but it does mean the sheriff's queue grows by whatever
automation files that week.

## Why bot PRs are caught by the sweep, not on open

The `pull_request_target` gate matches labels, titles and branches.
Teaching it about bot logins would mean maintaining the same author list
in a second syntax — the webhook payload says `dependabot[bot]` where
`gh` says `app/dependabot` — and the two would drift silently. The
hourly sweep already exists for exactly this ("strays opened while
nobody was looking"), so bot PRs are picked up within the hour instead.

## Verification

Confirmed against the live repo that `gh` reports these authors as
`app/dependabot`, `app/cloud-code-bot` and `comfy-pr-bot`, and that
`author:app/<slug>` search syntax returns them (8, 1 and 15 open PRs
respectively).

Tests 26/26 — including that a human login merely resembling a bot
(`dependabot-fan`) and a null author are both rejected. Lint, knip,
typecheck, format clean.

All 12 have already been assigned to the current sheriff manually; this
stops it recurring.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cursor-review Trigger multi-model Cursor agent review on this PR 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