test: add e2e tests for subgraph promoted widget panel regressions#10502
test: add e2e tests for subgraph promoted widget panel regressions#10502
Conversation
Add Playwright tests that expose three regressions in the subgraph promoted widget panel introduced by the proxy-widget-v2 refactor: - Linked promoted widgets (backed by subgraph input slots) show an enabled hide toggle in SubgraphEditor instead of a disabled link icon - Linked promoted widgets expose Hide/Show input in the WidgetActions three-dot menu on the Parameters tab - Widget labels in SubgraphEditor display raw widget.name instead of the renamed label from the subgraph input slot Also adds data-testid attributes to SubgraphEditor, SubgraphNodeWidget, and RightSidePanel for stable test selectors.
📝 WalkthroughWalkthroughThese changes add test identifiers to subgraph editor UI components and introduce a comprehensive browser test suite validating the behavior of promoted widget panels within subgraph editors. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 3 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🎨 Storybook: ✅ Built — View Storybook |
🎭 Playwright: ❌ 691 passed, 4 failed · 6 flaky❌ Failed Tests📊 Browser Reports
|
📦 Bundle: 5.08 MB gzip 🔴 +217 BDetailsSummary
Category Glance App Entry Points — 23 kB (baseline 23 kB) • ⚪ 0 BMain entry bundles and manifests
Status: 1 added / 1 removed Graph Workspace — 1.13 MB (baseline 1.13 MB) • 🔴 +232 BGraph editor runtime, canvas, workflow orchestration
Status: 1 added / 1 removed Views & Navigation — 76.7 kB (baseline 76.7 kB) • ⚪ 0 BTop-level views, pages, and routed surfaces
Status: 9 added / 9 removed / 2 unchanged Panels & Settings — 484 kB (baseline 484 kB) • ⚪ 0 BConfiguration panels, inspectors, and settings screens
Status: 10 added / 10 removed / 12 unchanged User & Accounts — 17.1 kB (baseline 17.1 kB) • ⚪ 0 BAuthentication, profile, and account management bundles
Status: 5 added / 5 removed / 2 unchanged Editors & Dialogs — 109 kB (baseline 109 kB) • ⚪ 0 BModals, dialogs, drawers, and in-app editors
Status: 2 added / 2 removed UI Components — 60.9 kB (baseline 60.9 kB) • ⚪ 0 BReusable component library chunks
Status: 5 added / 5 removed / 8 unchanged Data & Services — 2.95 MB (baseline 2.95 MB) • ⚪ 0 BStores, services, APIs, and repositories
Status: 13 added / 13 removed / 4 unchanged Utilities & Hooks — 334 kB (baseline 334 kB) • ⚪ 0 BHelpers, composables, and utility bundles
Status: 13 added / 13 removed / 12 unchanged Vendor & Third-Party — 9.8 MB (baseline 9.8 MB) • ⚪ 0 BExternal libraries and shared vendor chunks Status: 16 unchanged Other — 8.41 MB (baseline 8.41 MB) • ⚪ 0 BBundles that do not match a named category
Status: 55 added / 55 removed / 79 unchanged ⚡ Performance Report
All metrics
Historical variance (last 10 runs)
Trend (last 10 commits on main)
Raw data{
"timestamp": "2026-03-25T06:27:16.559Z",
"gitSha": "76f7c0dc0825ad1137c7cecbc9a116049dd135fb",
"branch": "test/subgraph-promoted-widget-hide-regression",
"measurements": [
{
"name": "canvas-idle",
"durationMs": 2040.4269999999656,
"styleRecalcs": 12,
"styleRecalcDurationMs": 12.240999999999998,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 410.0570000000001,
"heapDeltaBytes": 21103392,
"domNodes": 22,
"jsHeapTotalBytes": 22544384,
"scriptDurationMs": 29.843,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.670000000000073
},
{
"name": "canvas-idle",
"durationMs": 2021.2850000000344,
"styleRecalcs": 11,
"styleRecalcDurationMs": 9.334000000000001,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 411.2749999999999,
"heapDeltaBytes": 20422376,
"domNodes": 21,
"jsHeapTotalBytes": 22806528,
"scriptDurationMs": 26.794000000000004,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "canvas-idle",
"durationMs": 1999.3899999999485,
"styleRecalcs": 11,
"styleRecalcDurationMs": 8.592,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 395.37200000000007,
"heapDeltaBytes": 19915104,
"domNodes": 22,
"jsHeapTotalBytes": 23330816,
"scriptDurationMs": 22.760999999999996,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "canvas-mouse-sweep",
"durationMs": 2030.7050000000118,
"styleRecalcs": 84,
"styleRecalcDurationMs": 46.908,
"layouts": 12,
"layoutDurationMs": 3.5399999999999996,
"taskDurationMs": 1033.344,
"heapDeltaBytes": 15462700,
"domNodes": 68,
"jsHeapTotalBytes": 23330816,
"scriptDurationMs": 127.03200000000001,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "canvas-mouse-sweep",
"durationMs": 1862.0520000000056,
"styleRecalcs": 75,
"styleRecalcDurationMs": 39.089,
"layouts": 12,
"layoutDurationMs": 3.913,
"taskDurationMs": 806.748,
"heapDeltaBytes": 16504588,
"domNodes": 57,
"jsHeapTotalBytes": 23592960,
"scriptDurationMs": 131.667,
"eventListeners": 4,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "canvas-mouse-sweep",
"durationMs": 2035.0729999998975,
"styleRecalcs": 84,
"styleRecalcDurationMs": 44.339,
"layouts": 12,
"layoutDurationMs": 3.508,
"taskDurationMs": 992.6000000000001,
"heapDeltaBytes": 6349428,
"domNodes": 68,
"jsHeapTotalBytes": 25690112,
"scriptDurationMs": 127.26399999999998,
"eventListeners": 30,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "canvas-zoom-sweep",
"durationMs": 1746.124000000009,
"styleRecalcs": 33,
"styleRecalcDurationMs": 17.718000000000004,
"layouts": 6,
"layoutDurationMs": 0.596,
"taskDurationMs": 325.19800000000004,
"heapDeltaBytes": 24516808,
"domNodes": 80,
"jsHeapTotalBytes": 21233664,
"scriptDurationMs": 23.502,
"eventListeners": 19,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "canvas-zoom-sweep",
"durationMs": 1728.3110000000192,
"styleRecalcs": 33,
"styleRecalcDurationMs": 19.032,
"layouts": 6,
"layoutDurationMs": 0.7790000000000001,
"taskDurationMs": 346.39,
"heapDeltaBytes": 24311948,
"domNodes": 80,
"jsHeapTotalBytes": 20709376,
"scriptDurationMs": 26.384,
"eventListeners": 19,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.659999999999947
},
{
"name": "canvas-zoom-sweep",
"durationMs": 1757.2229999999536,
"styleRecalcs": 31,
"styleRecalcDurationMs": 18.047,
"layouts": 6,
"layoutDurationMs": 0.8420000000000001,
"taskDurationMs": 331.48199999999997,
"heapDeltaBytes": 24663296,
"domNodes": 79,
"jsHeapTotalBytes": 20971520,
"scriptDurationMs": 28.359999999999996,
"eventListeners": 21,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "dom-widget-clipping",
"durationMs": 655.305999999996,
"styleRecalcs": 11,
"styleRecalcDurationMs": 8.848000000000003,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 411.335,
"heapDeltaBytes": 6847356,
"domNodes": 18,
"jsHeapTotalBytes": 12320768,
"scriptDurationMs": 67.34299999999999,
"eventListeners": 2,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.65999999999999
},
{
"name": "dom-widget-clipping",
"durationMs": 548.5449999999901,
"styleRecalcs": 11,
"styleRecalcDurationMs": 6.8420000000000005,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 321.423,
"heapDeltaBytes": 6858244,
"domNodes": 17,
"jsHeapTotalBytes": 13107200,
"scriptDurationMs": 55.286,
"eventListeners": 2,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.65999999999999
},
{
"name": "dom-widget-clipping",
"durationMs": 600.402000000031,
"styleRecalcs": 14,
"styleRecalcDurationMs": 10.484,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 360.87800000000004,
"heapDeltaBytes": 6498292,
"domNodes": 27,
"jsHeapTotalBytes": 13631488,
"scriptDurationMs": 64.402,
"eventListeners": 26,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.65999999999999
},
{
"name": "large-graph-idle",
"durationMs": 2034.368000000029,
"styleRecalcs": 10,
"styleRecalcDurationMs": 10.651000000000002,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 596.2879999999999,
"heapDeltaBytes": -6301608,
"domNodes": -265,
"jsHeapTotalBytes": 15724544,
"scriptDurationMs": 100.677,
"eventListeners": -172,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "large-graph-idle",
"durationMs": 2053.816999999981,
"styleRecalcs": 11,
"styleRecalcDurationMs": 11.639,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 630.7750000000001,
"heapDeltaBytes": 4201580,
"domNodes": -264,
"jsHeapTotalBytes": 16191488,
"scriptDurationMs": 102.12700000000001,
"eventListeners": -146,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.660000000000036
},
{
"name": "large-graph-idle",
"durationMs": 2034.7960000000285,
"styleRecalcs": 11,
"styleRecalcDurationMs": 11.925999999999998,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 610.0160000000001,
"heapDeltaBytes": 3200832,
"domNodes": -267,
"jsHeapTotalBytes": 16453632,
"scriptDurationMs": 100.39300000000001,
"eventListeners": -162,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.660000000000036
},
{
"name": "large-graph-pan",
"durationMs": 2210.299999999961,
"styleRecalcs": 69,
"styleRecalcDurationMs": 17.078999999999997,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 1191.182,
"heapDeltaBytes": 18159832,
"domNodes": -271,
"jsHeapTotalBytes": 18231296,
"scriptDurationMs": 410.473,
"eventListeners": -170,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.670000000000073
},
{
"name": "large-graph-pan",
"durationMs": 2141.282999999987,
"styleRecalcs": 68,
"styleRecalcDurationMs": 16.25,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 1152.648,
"heapDeltaBytes": 18034312,
"domNodes": -272,
"jsHeapTotalBytes": 17707008,
"scriptDurationMs": 400.038,
"eventListeners": -170,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "large-graph-pan",
"durationMs": 2138.6189999999488,
"styleRecalcs": 70,
"styleRecalcDurationMs": 18.287000000000003,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 1128.977,
"heapDeltaBytes": 16857264,
"domNodes": -266,
"jsHeapTotalBytes": 17707008,
"scriptDurationMs": 385.50700000000006,
"eventListeners": -170,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "minimap-idle",
"durationMs": 2049.710999999945,
"styleRecalcs": 9,
"styleRecalcDurationMs": 9.152999999999999,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 589.0450000000001,
"heapDeltaBytes": 16704320,
"domNodes": -270,
"jsHeapTotalBytes": 15462400,
"scriptDurationMs": 93.74000000000002,
"eventListeners": -172,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "minimap-idle",
"durationMs": 2020.1229999999555,
"styleRecalcs": 9,
"styleRecalcDurationMs": 9.284,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 612.6720000000001,
"heapDeltaBytes": -6336688,
"domNodes": -267,
"jsHeapTotalBytes": 16248832,
"scriptDurationMs": 100.64199999999998,
"eventListeners": -172,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "minimap-idle",
"durationMs": 2033.5380000000214,
"styleRecalcs": 11,
"styleRecalcDurationMs": 8.670999999999998,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 576.4609999999999,
"heapDeltaBytes": -6204376,
"domNodes": -265,
"jsHeapTotalBytes": 15724544,
"scriptDurationMs": 94.424,
"eventListeners": -170,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.659999999999947
},
{
"name": "subgraph-dom-widget-clipping",
"durationMs": 580.5550000000039,
"styleRecalcs": 48,
"styleRecalcDurationMs": 12.041,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 364.935,
"heapDeltaBytes": 5915592,
"domNodes": 22,
"jsHeapTotalBytes": 14155776,
"scriptDurationMs": 120.725,
"eventListeners": 8,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "subgraph-dom-widget-clipping",
"durationMs": 577.4890000000141,
"styleRecalcs": 48,
"styleRecalcDurationMs": 13.811,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 381.81,
"heapDeltaBytes": 6713068,
"domNodes": 25,
"jsHeapTotalBytes": 13369344,
"scriptDurationMs": 125.116,
"eventListeners": 32,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.65999999999999
},
{
"name": "subgraph-dom-widget-clipping",
"durationMs": 551.6619999999648,
"styleRecalcs": 47,
"styleRecalcDurationMs": 11.892,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 363.609,
"heapDeltaBytes": 5981148,
"domNodes": 20,
"jsHeapTotalBytes": 14155776,
"scriptDurationMs": 123.125,
"eventListeners": 8,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.65999999999999
},
{
"name": "subgraph-idle",
"durationMs": 2026.8570000000068,
"styleRecalcs": 11,
"styleRecalcDurationMs": 11.355999999999998,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 410.29,
"heapDeltaBytes": 20015712,
"domNodes": 23,
"jsHeapTotalBytes": 22544384,
"scriptDurationMs": 26.230000000000004,
"eventListeners": 28,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.660000000000036
},
{
"name": "subgraph-idle",
"durationMs": 2010.592000000031,
"styleRecalcs": 12,
"styleRecalcDurationMs": 11.950000000000001,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 417.60600000000005,
"heapDeltaBytes": 10536136,
"domNodes": 25,
"jsHeapTotalBytes": 25427968,
"scriptDurationMs": 23.089999999999996,
"eventListeners": 30,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.659999999999947
},
{
"name": "subgraph-idle",
"durationMs": 1997.9809999999816,
"styleRecalcs": 12,
"styleRecalcDurationMs": 9.565,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 363.36800000000005,
"heapDeltaBytes": 19786848,
"domNodes": 23,
"jsHeapTotalBytes": 22806528,
"scriptDurationMs": 18.309999999999995,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.660000000000036
},
{
"name": "subgraph-mouse-sweep",
"durationMs": 1993.003999999985,
"styleRecalcs": 88,
"styleRecalcDurationMs": 53.785,
"layouts": 16,
"layoutDurationMs": 4.763,
"taskDurationMs": 995.2120000000001,
"heapDeltaBytes": 3066232,
"domNodes": 77,
"jsHeapTotalBytes": 26476544,
"scriptDurationMs": 100.969,
"eventListeners": 30,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.660000000000036
},
{
"name": "subgraph-mouse-sweep",
"durationMs": 2000.1379999999926,
"styleRecalcs": 85,
"styleRecalcDurationMs": 49.082,
"layouts": 16,
"layoutDurationMs": 4.493,
"taskDurationMs": 965.1420000000002,
"heapDeltaBytes": 11294512,
"domNodes": 74,
"jsHeapTotalBytes": 22806528,
"scriptDurationMs": 99.14900000000002,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "subgraph-mouse-sweep",
"durationMs": 1989.1099999999824,
"styleRecalcs": 87,
"styleRecalcDurationMs": 46.800999999999995,
"layouts": 16,
"layoutDurationMs": 4.311,
"taskDurationMs": 947.217,
"heapDeltaBytes": 12110552,
"domNodes": 75,
"jsHeapTotalBytes": 23330816,
"scriptDurationMs": 98.307,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "vue-large-graph-idle",
"durationMs": 10532.582999999988,
"styleRecalcs": 0,
"styleRecalcDurationMs": 0,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 10513.570999999998,
"heapDeltaBytes": -50487688,
"domNodes": -8341,
"jsHeapTotalBytes": 17129472,
"scriptDurationMs": 562.728,
"eventListeners": -16483,
"totalBlockingTimeMs": 0,
"frameDurationMs": 20
},
{
"name": "vue-large-graph-idle",
"durationMs": 10890.664000000015,
"styleRecalcs": 0,
"styleRecalcDurationMs": 0,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 10873.843,
"heapDeltaBytes": -46867252,
"domNodes": -8343,
"jsHeapTotalBytes": 22896640,
"scriptDurationMs": 593.765,
"eventListeners": -16480,
"totalBlockingTimeMs": 0,
"frameDurationMs": 18.329999999999927
},
{
"name": "vue-large-graph-idle",
"durationMs": 10715.163999999959,
"styleRecalcs": 0,
"styleRecalcDurationMs": 0,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 10701.914999999999,
"heapDeltaBytes": -32599172,
"domNodes": -8343,
"jsHeapTotalBytes": 24207360,
"scriptDurationMs": 550.428,
"eventListeners": -16481,
"totalBlockingTimeMs": 0,
"frameDurationMs": 18.340000000000146
},
{
"name": "vue-large-graph-pan",
"durationMs": 12840.83000000004,
"styleRecalcs": 67,
"styleRecalcDurationMs": 15.287999999999997,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 12821.148999999998,
"heapDeltaBytes": -41554844,
"domNodes": -8343,
"jsHeapTotalBytes": -3665920,
"scriptDurationMs": 848.419,
"eventListeners": -16503,
"totalBlockingTimeMs": 0,
"frameDurationMs": 18.33000000000029
},
{
"name": "vue-large-graph-pan",
"durationMs": 12656.379000000015,
"styleRecalcs": 64,
"styleRecalcDurationMs": 15.092999999999995,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 12634.730000000001,
"heapDeltaBytes": -8876172,
"domNodes": -8343,
"jsHeapTotalBytes": 24645632,
"scriptDurationMs": 848.9920000000001,
"eventListeners": -16479,
"totalBlockingTimeMs": 0,
"frameDurationMs": 20
},
{
"name": "vue-large-graph-pan",
"durationMs": 12500.858999999991,
"styleRecalcs": 64,
"styleRecalcDurationMs": 14.065000000000023,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 12480.729,
"heapDeltaBytes": -21149564,
"domNodes": -8343,
"jsHeapTotalBytes": 24383488,
"scriptDurationMs": 808.757,
"eventListeners": -16477,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.670000000000073
},
{
"name": "workflow-execution",
"durationMs": 452.0919999999933,
"styleRecalcs": 16,
"styleRecalcDurationMs": 23.203,
"layouts": 5,
"layoutDurationMs": 1.83,
"taskDurationMs": 130.948,
"heapDeltaBytes": 4717052,
"domNodes": 166,
"jsHeapTotalBytes": 262144,
"scriptDurationMs": 31.308000000000003,
"eventListeners": 71,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998
},
{
"name": "workflow-execution",
"durationMs": 459.93299999997816,
"styleRecalcs": 18,
"styleRecalcDurationMs": 25.128999999999994,
"layouts": 4,
"layoutDurationMs": 1.1969999999999998,
"taskDurationMs": 122.30099999999996,
"heapDeltaBytes": 4378896,
"domNodes": 157,
"jsHeapTotalBytes": 0,
"scriptDurationMs": 26.152,
"eventListeners": 71,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.65999999999999
},
{
"name": "workflow-execution",
"durationMs": 446.32100000001174,
"styleRecalcs": 17,
"styleRecalcDurationMs": 25.375,
"layouts": 5,
"layoutDurationMs": 1.4580000000000002,
"taskDurationMs": 127.24100000000001,
"heapDeltaBytes": 4507940,
"domNodes": 155,
"jsHeapTotalBytes": 524288,
"scriptDurationMs": 30.660999999999998,
"eventListeners": 71,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.65999999999999
}
]
} |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
browser_tests/fixtures/selectors.ts (1)
101-120:TestIdValuetype union is missing the newsubgraphEditornamespace.The new
subgraphEditornamespace is not included in theTestIdValueunion type, breaking type completeness.♻️ Proposed fix
| (typeof TestIds.propertiesPanel)[keyof typeof TestIds.propertiesPanel] + | (typeof TestIds.subgraphEditor)[keyof typeof TestIds.subgraphEditor] | (typeof TestIds.node)[keyof typeof TestIds.node]🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@browser_tests/fixtures/selectors.ts` around lines 101 - 120, The TestIdValue union is missing the new TestIds.subgraphEditor namespace; update the TestIdValue type to include | (typeof TestIds.subgraphEditor)[keyof typeof TestIds.subgraphEditor] so the union covers subgraphEditor IDs (locate the TestIdValue type in selectors.ts and add that clause alongside the other TestIds.<namespace> entries).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@browser_tests/fixtures/selectors.ts`:
- Around line 101-120: The TestIdValue union is missing the new
TestIds.subgraphEditor namespace; update the TestIdValue type to include |
(typeof TestIds.subgraphEditor)[keyof typeof TestIds.subgraphEditor] so the
union covers subgraphEditor IDs (locate the TestIdValue type in selectors.ts and
add that clause alongside the other TestIds.<namespace> entries).
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 13a967be-4134-431f-9467-0d32ee3392f8
📒 Files selected for processing (5)
browser_tests/fixtures/selectors.tsbrowser_tests/tests/subgraphPromotedWidgetPanel.spec.tssrc/components/rightSidePanel/RightSidePanel.vuesrc/components/rightSidePanel/subgraph/SubgraphEditor.vuesrc/components/rightSidePanel/subgraph/SubgraphNodeWidget.vue
christian-byrne
left a comment
There was a problem hiding this comment.
Good test design and coverage of the targeted regressions. Two blockers:
-
Missing workflow fixture: the test loads 'subgraphs/test-values-input-subgraph' but that JSON file is not in the PR diff. Tests will crash at runtime without it.
-
TestIdValue type not updated: new subgraphEditor namespace added to TestIds but the TestIdValue union type is missing the corresponding entry. Needs:
| (typeof TestIds.subgraphEditor)[keyof typeof TestIds.subgraphEditor]
Also worth considering: the 3 raw CSS icon selectors (.icon-\[lucide--link\], .icon-\[lucide--eye\], .icon-\[lucide--more-vertical\]) are fragile — if the icon library changes, tests break. data-testid attributes on those elements would be more stable.
|
I am submitting a pull request to fix the issue based on the feedback in the comments. |
Summary
data-testidattributes toSubgraphEditor,SubgraphNodeWidget, andRightSidePanelfor stable test selectorsTests added
widget.nameshown instead ofwidget.labelTest plan
main(confirming bugs exist)┆Issue is synchronized with this Notion page by Unito