Skip to content

docs: document when to use page.evaluate vs user actions in browser tests#10658

Open
christian-byrne wants to merge 3 commits intomainfrom
mai-09-reduce-page-evaluate
Open

docs: document when to use page.evaluate vs user actions in browser tests#10658
christian-byrne wants to merge 3 commits intomainfrom
mai-09-reduce-page-evaluate

Conversation

@christian-byrne
Copy link
Copy Markdown
Contributor

@christian-byrne christian-byrne commented Mar 28, 2026

Summary

Document acceptable vs avoidable page.evaluate patterns in Playwright E2E tests, with migration candidates for existing offenders.

Changes

  • What: Add "When to Use page.evaluate" section to docs/guidance/playwright.md with acceptable/avoid/preferred guidance and 8 migration candidates identified from audit

Review Focus

Whether the migration candidate list covers the right tests and whether the acceptable/avoid boundary is drawn correctly.

┆Issue is synchronized with this Notion page by Unito

@christian-byrne christian-byrne requested a review from a team March 28, 2026 07:50
@dosubot dosubot bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Mar 28, 2026
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 28, 2026

🎨 Storybook: ✅ Built — View Storybook

Details

⏰ Completed at: 03/29/2026, 02:02:42 AM UTC

Links

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 28, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 4edb4212-b2d4-4b8a-862e-38f890dd4740

📥 Commits

Reviewing files that changed from the base of the PR and between de13d2b and 94357c3.

📒 Files selected for processing (1)
  • docs/guidance/playwright.md
✅ Files skipped from review due to trivial changes (1)
  • docs/guidance/playwright.md

📝 Walkthrough

Walkthrough

Adds a "When to Use page.evaluate" guidance section to Playwright docs, categorizing acceptable, avoidable, and preferred usages and pointing readers to fixture helpers and migration candidates.

Changes

Cohort / File(s) Summary
Testing Documentation
docs/guidance/playwright.md
Added "When to Use page.evaluate" guidance: defines Acceptable (read-only/internal inspection), Avoid (UI-equivalent mutations, synthetic events), Preferred (use browser_tests/fixtures/helpers/), and lists migration candidates/specs to update.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 I hopped through the docs with a bright little grin,
Told tests when to peek and when not to begin.
Let helpers do clicking, let evaluate read,
Cleaner green runs and fewer flakes to heed.
—a rabbit, nibbling on clarity 🥕

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely describes the main change: documenting guidance for page.evaluate usage versus user actions in browser tests.
Description check ✅ Passed The description includes a summary and changes section with details, but lacks some template sections like Review Focus clarity and Screenshots.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
End-To-End Regression Coverage For Fixes ✅ Passed PR title and commit messages contain no bug-fix keywords (fix, fixed, fixes, bugfix, etc.), indicating this is a documentation-only change that does not require regression testing.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch mai-09-reduce-page-evaluate

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 28, 2026

📦 Bundle: 5.09 MB gzip 🟢 -206 B

Details

Summary

  • Raw size: 23.4 MB baseline 23.4 MB — ⚪ 0 B
  • Gzip: 5.09 MB baseline 5.09 MB — 🟢 -206 B
  • Brotli: 3.94 MB baseline 3.94 MB — 🔴 +30 B
  • Bundles: 249 current • 249 baseline • 114 added / 114 removed

Category Glance
Vendor & Third-Party ⚪ 0 B (9.8 MB) · Other ⚪ 0 B (8.43 MB) · Data & Services ⚪ 0 B (2.96 MB) · Graph Workspace ⚪ 0 B (1.14 MB) · Panels & Settings ⚪ 0 B (484 kB) · Utilities & Hooks ⚪ 0 B (334 kB) · + 5 more

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

Main entry bundles and manifests

File Before After Δ Raw Δ Gzip Δ Brotli
assets/index-DxZiTbaY.js (removed) 22.3 kB 🟢 -22.3 kB 🟢 -7.94 kB 🟢 -6.82 kB
assets/index-LmMTY25F.js (new) 22.3 kB 🔴 +22.3 kB 🔴 +7.93 kB 🔴 +6.81 kB

Status: 1 added / 1 removed

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

Graph editor runtime, canvas, workflow orchestration

File Before After Δ Raw Δ Gzip Δ Brotli
assets/GraphView-BnPnHT8n.js (new) 1.14 MB 🔴 +1.14 MB 🔴 +244 kB 🔴 +184 kB
assets/GraphView-DMGTbbRe.js (removed) 1.14 MB 🟢 -1.14 MB 🟢 -244 kB 🟢 -184 kB

Status: 1 added / 1 removed

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

Top-level views, pages, and routed surfaces

File Before After Δ Raw Δ Gzip Δ Brotli
assets/CloudSurveyView-BkWPP7LY.js (removed) 15.7 kB 🟢 -15.7 kB 🟢 -3.4 kB 🟢 -2.89 kB
assets/CloudSurveyView-DJOAJC-8.js (new) 15.7 kB 🔴 +15.7 kB 🔴 +3.4 kB 🔴 +2.91 kB
assets/CloudLoginView-CSJuLPC3.js (new) 12 kB 🔴 +12 kB 🔴 +3.35 kB 🔴 +2.96 kB
assets/CloudLoginView-Dlf3Slcn.js (removed) 12 kB 🟢 -12 kB 🟢 -3.35 kB 🟢 -2.97 kB
assets/CloudSignupView-BZhgJhMI.js (removed) 9.78 kB 🟢 -9.78 kB 🟢 -2.85 kB 🟢 -2.52 kB
assets/CloudSignupView-CkjUWYu0.js (new) 9.78 kB 🔴 +9.78 kB 🔴 +2.85 kB 🔴 +2.5 kB
assets/UserCheckView-Dsj5pKl8.js (new) 9.04 kB 🔴 +9.04 kB 🔴 +2.33 kB 🔴 +2.03 kB
assets/UserCheckView-DzxLwRzQ.js (removed) 9.04 kB 🟢 -9.04 kB 🟢 -2.33 kB 🟢 -2.03 kB
assets/CloudLayoutView-B3my2yDS.js (removed) 7.54 kB 🟢 -7.54 kB 🟢 -2.36 kB 🟢 -2.07 kB
assets/CloudLayoutView-CA5FdZdB.js (new) 7.54 kB 🔴 +7.54 kB 🔴 +2.36 kB 🔴 +2.05 kB
assets/CloudForgotPasswordView-DX3Veh6V.js (new) 5.94 kB 🔴 +5.94 kB 🔴 +2.09 kB 🔴 +1.85 kB
assets/CloudForgotPasswordView-HCcFVHPu.js (removed) 5.94 kB 🟢 -5.94 kB 🟢 -2.1 kB 🟢 -1.84 kB
assets/CloudAuthTimeoutView-BxOk_YXX.js (removed) 5.31 kB 🟢 -5.31 kB 🟢 -1.93 kB 🟢 -1.69 kB
assets/CloudAuthTimeoutView-CfYNT5Vs.js (new) 5.31 kB 🔴 +5.31 kB 🔴 +1.93 kB 🔴 +1.69 kB
assets/CloudSubscriptionRedirectView--uf8OIbV.js (removed) 5.08 kB 🟢 -5.08 kB 🟢 -1.91 kB 🟢 -1.69 kB
assets/CloudSubscriptionRedirectView-DSQwKa_V.js (new) 5.08 kB 🔴 +5.08 kB 🔴 +1.91 kB 🔴 +1.69 kB
assets/UserSelectView-Bv5oA8pj.js (new) 4.71 kB 🔴 +4.71 kB 🔴 +1.74 kB 🔴 +1.55 kB
assets/UserSelectView-DnppULbD.js (removed) 4.71 kB 🟢 -4.71 kB 🟢 -1.74 kB 🟢 -1.54 kB

Status: 9 added / 9 removed / 2 unchanged

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

Configuration panels, inspectors, and settings screens

File Before After Δ Raw Δ Gzip Δ Brotli
assets/KeybindingPanel-BUfFBh35.js (new) 46.6 kB 🔴 +46.6 kB 🔴 +9.52 kB 🔴 +8.46 kB
assets/KeybindingPanel-cMtlOHf9.js (removed) 46.6 kB 🟢 -46.6 kB 🟢 -9.52 kB 🟢 -8.47 kB
assets/SecretsPanel-DkmVF6bH.js (removed) 22.4 kB 🟢 -22.4 kB 🟢 -5.42 kB 🟢 -4.76 kB
assets/SecretsPanel-vWMzNJKr.js (new) 22.4 kB 🔴 +22.4 kB 🔴 +5.42 kB 🔴 +4.78 kB
assets/LegacyCreditsPanel-BP_4cgsI.js (new) 21.5 kB 🔴 +21.5 kB 🔴 +5.81 kB 🔴 +5.14 kB
assets/LegacyCreditsPanel-C5PhBlB_.js (removed) 21.5 kB 🟢 -21.5 kB 🟢 -5.82 kB 🟢 -5.13 kB
assets/SubscriptionPanel-CBivsfke.js (removed) 19.7 kB 🟢 -19.7 kB 🟢 -5.01 kB 🟢 -4.4 kB
assets/SubscriptionPanel-CodogSdC.js (new) 19.7 kB 🔴 +19.7 kB 🔴 +5 kB 🔴 +4.4 kB
assets/AboutPanel-CI1EaBL2.js (new) 12 kB 🔴 +12 kB 🔴 +3.32 kB 🔴 +2.98 kB
assets/AboutPanel-D5atywGW.js (removed) 12 kB 🟢 -12 kB 🟢 -3.33 kB 🟢 -2.98 kB
assets/ExtensionPanel-CECOw5lk.js (new) 9.78 kB 🔴 +9.78 kB 🔴 +2.82 kB 🔴 +2.49 kB
assets/ExtensionPanel-DlafOyfJ.js (removed) 9.78 kB 🟢 -9.78 kB 🟢 -2.82 kB 🟢 -2.5 kB
assets/ServerConfigPanel-BYhfr52X.js (new) 6.85 kB 🔴 +6.85 kB 🔴 +2.27 kB 🔴 +2.04 kB
assets/ServerConfigPanel-DCsmfwtv.js (removed) 6.85 kB 🟢 -6.85 kB 🟢 -2.27 kB 🟢 -2.03 kB
assets/UserPanel-aO5DOoVd.js (removed) 6.56 kB 🟢 -6.56 kB 🟢 -2.16 kB 🟢 -1.91 kB
assets/UserPanel-IARKUKSW.js (new) 6.56 kB 🔴 +6.56 kB 🔴 +2.15 kB 🔴 +1.9 kB
assets/cloudRemoteConfig-CoU0LQwv.js (new) 1.85 kB 🔴 +1.85 kB 🔴 +902 B 🔴 +796 B
assets/cloudRemoteConfig-DEnyQjYj.js (removed) 1.85 kB 🟢 -1.85 kB 🟢 -903 B 🟢 -793 B
assets/refreshRemoteConfig-BzNcwpBQ.js (removed) 1.45 kB 🟢 -1.45 kB 🟢 -648 B 🟢 -551 B
assets/refreshRemoteConfig-CUHLJ1Wk.js (new) 1.45 kB 🔴 +1.45 kB 🔴 +650 B 🔴 +551 B

Status: 10 added / 10 removed / 12 unchanged

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

Authentication, profile, and account management bundles

File Before After Δ Raw Δ Gzip Δ Brotli
assets/auth-BtZifUo1.js (new) 3.57 kB 🔴 +3.57 kB 🔴 +1.26 kB 🔴 +1.08 kB
assets/auth-D9k3zwjO.js (removed) 3.57 kB 🟢 -3.57 kB 🟢 -1.26 kB 🟢 -1.07 kB
assets/SignUpForm-BXuSOlyq.js (removed) 3.16 kB 🟢 -3.16 kB 🟢 -1.28 kB 🟢 -1.15 kB
assets/SignUpForm-vXiE2xjo.js (new) 3.16 kB 🔴 +3.16 kB 🔴 +1.28 kB 🔴 +1.15 kB
assets/UpdatePasswordContent-A4bH4Hck.js (removed) 2.66 kB 🟢 -2.66 kB 🟢 -1.2 kB 🟢 -1.06 kB
assets/UpdatePasswordContent-D9sMohUC.js (new) 2.66 kB 🔴 +2.66 kB 🔴 +1.19 kB 🔴 +1.05 kB
assets/authStore-bc_oMIMj.js (removed) 989 B 🟢 -989 B 🟢 -483 B 🟢 -426 B
assets/authStore-CiR_YgkV.js (new) 989 B 🔴 +989 B 🔴 +482 B 🔴 +428 B
assets/auth-3aTlbgOz.js (new) 348 B 🔴 +348 B 🔴 +216 B 🔴 +190 B
assets/auth-CiEqK0Uy.js (removed) 348 B 🟢 -348 B 🟢 -217 B 🟢 -185 B

Status: 5 added / 5 removed / 2 unchanged

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

Modals, dialogs, drawers, and in-app editors

File Before After Δ Raw Δ Gzip Δ Brotli
assets/useShareDialog-Bk8c70JC.js (removed) 108 kB 🟢 -108 kB 🟢 -22.4 kB 🟢 -18.9 kB
assets/useShareDialog-BLLsATad.js (new) 108 kB 🔴 +108 kB 🔴 +22.4 kB 🔴 +18.9 kB
assets/useSubscriptionDialog-CpKw04y5.js (removed) 969 B 🟢 -969 B 🟢 -477 B 🟢 -416 B
assets/useSubscriptionDialog-DQKVcY4z.js (new) 969 B 🔴 +969 B 🔴 +476 B 🔴 +417 B

Status: 2 added / 2 removed

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

Reusable component library chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/ComfyQueueButton-DRMoOTsy.js (removed) 13.5 kB 🟢 -13.5 kB 🟢 -3.79 kB 🟢 -3.38 kB
assets/ComfyQueueButton-Dt9vUzuz.js (new) 13.5 kB 🔴 +13.5 kB 🔴 +3.79 kB 🔴 +3.37 kB
assets/useTerminalTabs-BPY_W--L.js (removed) 10.7 kB 🟢 -10.7 kB 🟢 -3.6 kB 🟢 -3.17 kB
assets/useTerminalTabs-mhwej6eg.js (new) 10.7 kB 🔴 +10.7 kB 🔴 +3.6 kB 🔴 +3.16 kB
assets/SubscribeButton-CoTMWvwn.js (removed) 2.42 kB 🟢 -2.42 kB 🟢 -1.04 kB 🟢 -916 B
assets/SubscribeButton-Dam4g3Rh.js (new) 2.42 kB 🔴 +2.42 kB 🔴 +1.04 kB 🔴 +916 B
assets/cloudFeedbackTopbarButton-D7n3q4ga.js (new) 1.66 kB 🔴 +1.66 kB 🔴 +843 B 🔴 +761 B
assets/cloudFeedbackTopbarButton-DLDwqTS0.js (removed) 1.66 kB 🟢 -1.66 kB 🟢 -845 B 🟢 -740 B
assets/ComfyQueueButton-B3plYduu.js (new) 1.03 kB 🔴 +1.03 kB 🔴 +489 B 🔴 +436 B
assets/ComfyQueueButton-BOmawbA7.js (removed) 1.03 kB 🟢 -1.03 kB 🟢 -490 B 🟢 -437 B

Status: 5 added / 5 removed / 8 unchanged

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

Stores, services, APIs, and repositories

File Before After Δ Raw Δ Gzip Δ Brotli
assets/dialogService-D_OUhQx0.js (removed) 1.92 MB 🟢 -1.92 MB 🟢 -443 kB 🟢 -336 kB
assets/dialogService-D1R48z0l.js (new) 1.92 MB 🔴 +1.92 MB 🔴 +443 kB 🔴 +336 kB
assets/api-BIA3qJEN.js (removed) 885 kB 🟢 -885 kB 🟢 -211 kB 🟢 -167 kB
assets/api-UNuF3Etj.js (new) 885 kB 🔴 +885 kB 🔴 +211 kB 🔴 +167 kB
assets/load3dService-BHnPem8m.js (removed) 92.5 kB 🟢 -92.5 kB 🟢 -19.7 kB 🟢 -16.9 kB
assets/load3dService-Cv0WEz3D.js (new) 92.5 kB 🔴 +92.5 kB 🔴 +19.7 kB 🔴 +17 kB
assets/workflowShareService-Dupi7qRP.js (removed) 16.6 kB 🟢 -16.6 kB 🟢 -4.88 kB 🟢 -4.32 kB
assets/workflowShareService-jaRnwgws.js (new) 16.6 kB 🔴 +16.6 kB 🔴 +4.88 kB 🔴 +4.32 kB
assets/keybindingService-Bzy3_6E5.js (new) 13.8 kB 🔴 +13.8 kB 🔴 +3.67 kB 🔴 +3.21 kB
assets/keybindingService-QC8Rj8GO.js (removed) 13.8 kB 🟢 -13.8 kB 🟢 -3.66 kB 🟢 -3.21 kB
assets/releaseStore-al7G6rQX.js (new) 8.12 kB 🔴 +8.12 kB 🔴 +2.28 kB 🔴 +2 kB
assets/releaseStore-rYS_YL1K.js (removed) 8.12 kB 🟢 -8.12 kB 🟢 -2.28 kB 🟢 -2 kB
assets/userStore-ChB9oqzI.js (new) 2.24 kB 🔴 +2.24 kB 🔴 +869 B 🔴 +768 B
assets/userStore-DVYLDWmo.js (removed) 2.24 kB 🟢 -2.24 kB 🟢 -870 B 🟢 -766 B
assets/audioService-BP5sDBbI.js (removed) 1.8 kB 🟢 -1.8 kB 🟢 -880 B 🟢 -764 B
assets/audioService-fthD2yfc.js (new) 1.8 kB 🔴 +1.8 kB 🔴 +876 B 🔴 +760 B
assets/releaseStore-BeITlINF.js (removed) 993 B 🟢 -993 B 🟢 -482 B 🟢 -427 B
assets/releaseStore-T1lk2_yd.js (new) 993 B 🔴 +993 B 🔴 +479 B 🔴 +422 B
assets/workflowDraftStore-Bqrd7lB3.js (new) 969 B 🔴 +969 B 🔴 +475 B 🔴 +423 B
assets/workflowDraftStore-pQF8TFsg.js (removed) 969 B 🟢 -969 B 🟢 -477 B 🟢 -423 B
assets/dialogService-BzsdM0XQ.js (new) 958 B 🔴 +958 B 🔴 +466 B 🔴 +417 B
assets/dialogService-DRHddZIf.js (removed) 958 B 🟢 -958 B 🟢 -468 B 🟢 -415 B
assets/settingStore-Cl2yFoXO.js (new) 956 B 🔴 +956 B 🔴 +471 B 🔴 +412 B
assets/settingStore-DnWNI25J.js (removed) 956 B 🟢 -956 B 🟢 -473 B 🟢 -413 B
assets/assetsStore-CHTwTlUc.js (new) 955 B 🔴 +955 B 🔴 +471 B 🔴 +416 B
assets/assetsStore-D9QI180S.js (removed) 955 B 🟢 -955 B 🟢 -473 B 🟢 -414 B

Status: 13 added / 13 removed / 4 unchanged

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

Helpers, composables, and utility bundles

File Before After Δ Raw Δ Gzip Δ Brotli
assets/useConflictDetection-BEQk3RlT.js (new) 232 kB 🔴 +232 kB 🔴 +51.3 kB 🔴 +41.7 kB
assets/useConflictDetection-BHolxsgr.js (removed) 232 kB 🟢 -232 kB 🟢 -51.3 kB 🟢 -41.7 kB
assets/useLoad3dViewer-DjBIeCva.js (removed) 18.7 kB 🟢 -18.7 kB 🟢 -4.44 kB 🟢 -3.91 kB
assets/useLoad3dViewer-DpC5SCbq.js (new) 18.7 kB 🔴 +18.7 kB 🔴 +4.44 kB 🔴 +3.9 kB
assets/useLoad3d-Betwytmd.js (removed) 15 kB 🟢 -15 kB 🟢 -3.79 kB 🟢 -3.38 kB
assets/useLoad3d-CgJnsi83.js (new) 15 kB 🔴 +15 kB 🔴 +3.79 kB 🔴 +3.35 kB
assets/useFeatureFlags-BsJp0TQQ.js (removed) 5.78 kB 🟢 -5.78 kB 🟢 -1.75 kB 🟢 -1.49 kB
assets/useFeatureFlags-BX53bWFs.js (new) 5.78 kB 🔴 +5.78 kB 🔴 +1.75 kB 🔴 +1.48 kB
assets/useCopyToClipboard-5QwWgYt_.js (removed) 5.29 kB 🟢 -5.29 kB 🟢 -1.86 kB 🟢 -1.57 kB
assets/useCopyToClipboard-DoM40hpm.js (new) 5.29 kB 🔴 +5.29 kB 🔴 +1.86 kB 🔴 +1.57 kB
assets/useWorkspaceUI-BmkCBVrN.js (new) 3.34 kB 🔴 +3.34 kB 🔴 +981 B 🔴 +819 B
assets/useWorkspaceUI-dip-YHrj.js (removed) 3.34 kB 🟢 -3.34 kB 🟢 -980 B 🟢 -809 B
assets/subscriptionCheckoutUtil-3sOSWHv9.js (new) 2.97 kB 🔴 +2.97 kB 🔴 +1.31 kB 🔴 +1.14 kB
assets/subscriptionCheckoutUtil-B1J35xLV.js (removed) 2.97 kB 🟢 -2.97 kB 🟢 -1.31 kB 🟢 -1.14 kB
assets/assetPreviewUtil-_L9QRCib.js (new) 2.27 kB 🔴 +2.27 kB 🔴 +959 B 🔴 +834 B
assets/assetPreviewUtil-rU6Rg40I.js (removed) 2.27 kB 🟢 -2.27 kB 🟢 -959 B 🟢 -838 B
assets/useUpstreamValue-jB0EW9Go.js (new) 2.08 kB 🔴 +2.08 kB 🔴 +805 B 🔴 +723 B
assets/useUpstreamValue-MhrCIRib.js (removed) 2.08 kB 🟢 -2.08 kB 🟢 -805 B 🟢 -710 B
assets/useLoad3d-BObceqaz.js (new) 1.13 kB 🔴 +1.13 kB 🔴 +540 B 🔴 +481 B
assets/useLoad3d-DeIruDeE.js (removed) 1.13 kB 🟢 -1.13 kB 🟢 -541 B 🟢 -480 B
assets/useLoad3dViewer-BL_A_iO2.js (removed) 1.07 kB 🟢 -1.07 kB 🟢 -507 B 🟢 -451 B
assets/useLoad3dViewer-C5_nxSOn.js (new) 1.07 kB 🔴 +1.07 kB 🔴 +507 B 🔴 +451 B
assets/useCurrentUser-D1LSrJUz.js (new) 955 B 🔴 +955 B 🔴 +471 B 🔴 +415 B
assets/useCurrentUser-DOAciQ_5.js (removed) 955 B 🟢 -955 B 🟢 -473 B 🟢 -414 B
assets/useWorkspaceSwitch-Bopc7ioO.js (removed) 747 B 🟢 -747 B 🟢 -385 B 🟢 -336 B
assets/useWorkspaceSwitch-CL1gS_kI.js (new) 747 B 🔴 +747 B 🔴 +388 B 🔴 +335 B

Status: 13 added / 13 removed / 12 unchanged

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

External libraries and shared vendor chunks

Status: 16 unchanged

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

Bundles that do not match a named category

File Before After Δ Raw Δ Gzip Δ Brotli
assets/core-CBF62Et-.js (removed) 76.8 kB 🟢 -76.8 kB 🟢 -19.9 kB 🟢 -17 kB
assets/core-CFriYFN5.js (new) 76.8 kB 🔴 +76.8 kB 🔴 +19.9 kB 🔴 +16.9 kB
assets/groupNode-Cmsh0bp4.js (new) 74 kB 🔴 +74 kB 🔴 +18.5 kB 🔴 +16.3 kB
assets/groupNode-CofNzI0m.js (removed) 74 kB 🟢 -74 kB 🟢 -18.5 kB 🟢 -16.3 kB
assets/WidgetSelect-D-l2TIyu.js (new) 64.6 kB 🔴 +64.6 kB 🔴 +14.1 kB 🔴 +12.2 kB
assets/WidgetSelect-UqgnNpnb.js (removed) 64.6 kB 🟢 -64.6 kB 🟢 -14.1 kB 🟢 -12.2 kB
assets/SubscriptionRequiredDialogContentWorkspace-BBl4JRgA.js (removed) 48.9 kB 🟢 -48.9 kB 🟢 -9.29 kB 🟢 -7.93 kB
assets/SubscriptionRequiredDialogContentWorkspace-CsxboN_U.js (new) 48.9 kB 🔴 +48.9 kB 🔴 +9.29 kB 🔴 +7.93 kB
assets/WidgetPainter-c80fS9Iq.js (new) 33.3 kB 🔴 +33.3 kB 🔴 +8.11 kB 🔴 +7.2 kB
assets/WidgetPainter-DdTMcbGl.js (removed) 33.3 kB 🟢 -33.3 kB 🟢 -8.11 kB 🟢 -7.2 kB
assets/Load3DControls-B3GegpIN.js (removed) 32.1 kB 🟢 -32.1 kB 🟢 -5.47 kB 🟢 -4.77 kB
assets/Load3DControls-WaHczZZa.js (new) 32.1 kB 🔴 +32.1 kB 🔴 +5.47 kB 🔴 +4.77 kB
assets/WorkspacePanelContent-BTWrcLCb.js (removed) 29.9 kB 🟢 -29.9 kB 🟢 -6.33 kB 🟢 -5.54 kB
assets/WorkspacePanelContent-DFa39Mh4.js (new) 29.9 kB 🔴 +29.9 kB 🔴 +6.33 kB 🔴 +5.55 kB
assets/SubscriptionRequiredDialogContent-BBORhe52.js (new) 28.2 kB 🔴 +28.2 kB 🔴 +7.16 kB 🔴 +6.31 kB
assets/SubscriptionRequiredDialogContent-VPsrmTz8.js (removed) 28.2 kB 🟢 -28.2 kB 🟢 -7.17 kB 🟢 -6.3 kB
assets/Load3dViewerContent-BzV8Yx7S.js (removed) 24.3 kB 🟢 -24.3 kB 🟢 -5.32 kB 🟢 -4.63 kB
assets/Load3dViewerContent-CAxMpFTn.js (new) 24.3 kB 🔴 +24.3 kB 🔴 +5.32 kB 🔴 +4.63 kB
assets/WidgetImageCrop-BtQpYbjh.js (new) 23.3 kB 🔴 +23.3 kB 🔴 +5.82 kB 🔴 +5.13 kB
assets/WidgetImageCrop-pudugsZX.js (removed) 23.3 kB 🟢 -23.3 kB 🟢 -5.83 kB 🟢 -5.13 kB
assets/SubscriptionPanelContentWorkspace-BsoTCbh2.js (removed) 22.2 kB 🟢 -22.2 kB 🟢 -5.18 kB 🟢 -4.56 kB
assets/SubscriptionPanelContentWorkspace-C0C1bxz3.js (new) 22.2 kB 🔴 +22.2 kB 🔴 +5.18 kB 🔴 +4.55 kB
assets/SignInContent-jVLdxjEO.js (removed) 20.4 kB 🟢 -20.4 kB 🟢 -5.29 kB 🟢 -4.63 kB
assets/SignInContent-uLP5h99k.js (new) 20.4 kB 🔴 +20.4 kB 🔴 +5.29 kB 🔴 +4.62 kB
assets/CurrentUserPopoverWorkspace-B1FOSsuF.js (removed) 20.4 kB 🟢 -20.4 kB 🟢 -4.84 kB 🟢 -4.33 kB
assets/CurrentUserPopoverWorkspace-DomZ65Te.js (new) 20.4 kB 🔴 +20.4 kB 🔴 +4.83 kB 🔴 +4.32 kB
assets/WidgetInputNumber-B_8XDmcW.js (removed) 19.1 kB 🟢 -19.1 kB 🟢 -4.84 kB 🟢 -4.29 kB
assets/WidgetInputNumber-C8z9z5yC.js (new) 19.1 kB 🔴 +19.1 kB 🔴 +4.84 kB 🔴 +4.3 kB
assets/WidgetRecordAudio-BQSjdMGd.js (removed) 18.1 kB 🟢 -18.1 kB 🟢 -5.18 kB 🟢 -4.64 kB
assets/WidgetRecordAudio-zlxdaoai.js (new) 18.1 kB 🔴 +18.1 kB 🔴 +5.18 kB 🔴 +4.64 kB
assets/Load3D-Ce2ULYME.js (removed) 16.9 kB 🟢 -16.9 kB 🟢 -4.12 kB 🟢 -3.59 kB
assets/Load3D-DvPXfqCQ.js (new) 16.9 kB 🔴 +16.9 kB 🔴 +4.11 kB 🔴 +3.59 kB
assets/WidgetCurve-6YIoXzOr.js (new) 16.1 kB 🔴 +16.1 kB 🔴 +4.97 kB 🔴 +4.46 kB
assets/WidgetCurve-B0TDV-kT.js (removed) 16.1 kB 🟢 -16.1 kB 🟢 -4.97 kB 🟢 -4.46 kB
assets/load3d-CxwfedEX.js (new) 15 kB 🔴 +15 kB 🔴 +4.32 kB 🔴 +3.74 kB
assets/load3d-iPFVlx8D.js (removed) 15 kB 🟢 -15 kB 🟢 -4.32 kB 🟢 -3.74 kB
assets/WaveAudioPlayer-sd2zxI74.js (removed) 13.4 kB 🟢 -13.4 kB 🟢 -3.69 kB 🟢 -3.22 kB
assets/WaveAudioPlayer-Yg1urevP.js (new) 13.4 kB 🔴 +13.4 kB 🔴 +3.68 kB 🔴 +3.22 kB
assets/TeamWorkspacesDialogContent-CjwFlqZS.js (removed) 11.1 kB 🟢 -11.1 kB 🟢 -3.33 kB 🟢 -2.98 kB
assets/TeamWorkspacesDialogContent-mqHzmZ4q.js (new) 11.1 kB 🔴 +11.1 kB 🔴 +3.33 kB 🔴 +2.97 kB
assets/nodeTemplates-B5Uf8S5g.js (removed) 9.58 kB 🟢 -9.58 kB 🟢 -3.38 kB 🟢 -2.97 kB
assets/nodeTemplates-D2vUCNm6.js (new) 9.58 kB 🔴 +9.58 kB 🔴 +3.37 kB 🔴 +2.97 kB
assets/InviteMemberDialogContent-BWzYUGYx.js (removed) 7.77 kB 🟢 -7.77 kB 🟢 -2.45 kB 🟢 -2.14 kB
assets/InviteMemberDialogContent-Du930FuE.js (new) 7.77 kB 🔴 +7.77 kB 🔴 +2.45 kB 🔴 +2.13 kB
assets/Load3DConfiguration-B-27dZZd.js (new) 6.6 kB 🔴 +6.6 kB 🔴 +2.04 kB 🔴 +1.78 kB
assets/Load3DConfiguration-CDduKkJ2.js (removed) 6.6 kB 🟢 -6.6 kB 🟢 -2.04 kB 🟢 -1.78 kB
assets/onboardingCloudRoutes-BEhpAxAu.js (removed) 6.53 kB 🟢 -6.53 kB 🟢 -2.04 kB 🟢 -1.75 kB
assets/onboardingCloudRoutes-DhFBrLwt.js (new) 6.53 kB 🔴 +6.53 kB 🔴 +2.04 kB 🔴 +1.75 kB
assets/WidgetWithControl-CYRiB_tl.js (removed) 5.99 kB 🟢 -5.99 kB 🟢 -2.38 kB 🟢 -2.11 kB
assets/WidgetWithControl-T8ehVIHR.js (new) 5.99 kB 🔴 +5.99 kB 🔴 +2.38 kB 🔴 +2.11 kB
assets/CreateWorkspaceDialogContent-BiGY194K.js (removed) 5.95 kB 🟢 -5.95 kB 🟢 -2.15 kB 🟢 -1.88 kB
assets/CreateWorkspaceDialogContent-DH-_pHk2.js (new) 5.95 kB 🔴 +5.95 kB 🔴 +2.15 kB 🔴 +1.88 kB
assets/FreeTierDialogContent-D3FJIVti.js (removed) 5.82 kB 🟢 -5.82 kB 🟢 -2.05 kB 🟢 -1.8 kB
assets/FreeTierDialogContent-DZ4SsAQN.js (new) 5.82 kB 🔴 +5.82 kB 🔴 +2.04 kB 🔴 +1.81 kB
assets/EditWorkspaceDialogContent-DGszhsVw.js (removed) 5.75 kB 🟢 -5.75 kB 🟢 -2.11 kB 🟢 -1.84 kB
assets/EditWorkspaceDialogContent-YBiTr-uA.js (new) 5.75 kB 🔴 +5.75 kB 🔴 +2.11 kB 🔴 +1.84 kB
assets/WidgetTextarea-B1e27K-C.js (removed) 5.53 kB 🟢 -5.53 kB 🟢 -2.17 kB 🟢 -1.91 kB
assets/WidgetTextarea-CQiWQ7jC.js (new) 5.53 kB 🔴 +5.53 kB 🔴 +2.17 kB 🔴 +1.92 kB
assets/Preview3d-CAXAiN9f.js (new) 5.36 kB 🔴 +5.36 kB 🔴 +1.8 kB 🔴 +1.56 kB
assets/Preview3d-CU-IiLMs.js (removed) 5.36 kB 🟢 -5.36 kB 🟢 -1.8 kB 🟢 -1.56 kB
assets/ValueControlPopover---Lwaw89.js (new) 5.33 kB 🔴 +5.33 kB 🔴 +1.93 kB 🔴 +1.73 kB
assets/ValueControlPopover-BFJzBWsi.js (removed) 5.33 kB 🟢 -5.33 kB 🟢 -1.93 kB 🟢 -1.72 kB
assets/CancelSubscriptionDialogContent-BfnGzFUK.js (new) 5.22 kB 🔴 +5.22 kB 🔴 +1.95 kB 🔴 +1.7 kB
assets/CancelSubscriptionDialogContent-DADE_Aih.js (removed) 5.22 kB 🟢 -5.22 kB 🟢 -1.95 kB 🟢 -1.7 kB
assets/DeleteWorkspaceDialogContent-CSoCz4L7.js (removed) 4.65 kB 🟢 -4.65 kB 🟢 -1.79 kB 🟢 -1.55 kB
assets/DeleteWorkspaceDialogContent-DJspc8DW.js (new) 4.65 kB 🔴 +4.65 kB 🔴 +1.79 kB 🔴 +1.55 kB
assets/LeaveWorkspaceDialogContent-CvhO5sd6.js (removed) 4.48 kB 🟢 -4.48 kB 🟢 -1.74 kB 🟢 -1.5 kB
assets/LeaveWorkspaceDialogContent-DEk5XYDG.js (new) 4.48 kB 🔴 +4.48 kB 🔴 +1.73 kB 🔴 +1.51 kB
assets/RemoveMemberDialogContent-DlZ90eIq.js (new) 4.46 kB 🔴 +4.46 kB 🔴 +1.69 kB 🔴 +1.47 kB
assets/RemoveMemberDialogContent-DY_r4wv-.js (removed) 4.46 kB 🟢 -4.46 kB 🟢 -1.69 kB 🟢 -1.47 kB
assets/tierBenefits-C6c9aGjU.js (new) 4.45 kB 🔴 +4.45 kB 🔴 +1.58 kB 🔴 +1.36 kB
assets/tierBenefits-ItQs33jM.js (removed) 4.45 kB 🟢 -4.45 kB 🟢 -1.57 kB 🟢 -1.36 kB
assets/RevokeInviteDialogContent-BK092ItW.js (new) 4.37 kB 🔴 +4.37 kB 🔴 +1.7 kB 🔴 +1.48 kB
assets/RevokeInviteDialogContent-BWjn4dlV.js (removed) 4.37 kB 🟢 -4.37 kB 🟢 -1.7 kB 🟢 -1.49 kB
assets/InviteMemberUpsellDialogContent-B3AW93Fh.js (new) 4.27 kB 🔴 +4.27 kB 🔴 +1.56 kB 🔴 +1.37 kB
assets/InviteMemberUpsellDialogContent-DMcFyUTm.js (removed) 4.27 kB 🟢 -4.27 kB 🟢 -1.56 kB 🟢 -1.37 kB
assets/cloudSessionCookie-DFd3A8Dl.js (new) 4.12 kB 🔴 +4.12 kB 🔴 +1.49 kB 🔴 +1.29 kB
assets/cloudSessionCookie-DuUv_7-k.js (removed) 4.12 kB 🟢 -4.12 kB 🟢 -1.49 kB 🟢 -1.29 kB
assets/saveMesh-B12gT1xg.js (removed) 3.92 kB 🟢 -3.92 kB 🟢 -1.69 kB 🟢 -1.48 kB
assets/saveMesh-CRUL0-dk.js (new) 3.92 kB 🔴 +3.92 kB 🔴 +1.69 kB 🔴 +1.48 kB
assets/Media3DTop-D51G6-s8.js (new) 3.85 kB 🔴 +3.85 kB 🔴 +1.62 kB 🔴 +1.43 kB
assets/Media3DTop-X9MSRT1F.js (removed) 3.85 kB 🟢 -3.85 kB 🟢 -1.63 kB 🟢 -1.44 kB
assets/GlobalToast-CQjUh3TF.js (removed) 3.05 kB 🟢 -3.05 kB 🟢 -1.26 kB 🟢 -1.07 kB
assets/GlobalToast-WdhPajqS.js (new) 3.05 kB 🔴 +3.05 kB 🔴 +1.26 kB 🔴 +1.07 kB
assets/SubscribeToRun-DNDXxbni.js (removed) 2.13 kB 🟢 -2.13 kB 🟢 -982 B 🟢 -872 B
assets/SubscribeToRun-DsM4s8Ik.js (new) 2.13 kB 🔴 +2.13 kB 🔴 +982 B 🔴 +867 B
assets/MediaAudioTop-C_WxtaPT.js (removed) 2.02 kB 🟢 -2.02 kB 🟢 -983 B 🟢 -832 B
assets/MediaAudioTop-DfzZxFSO.js (new) 2.02 kB 🔴 +2.02 kB 🔴 +980 B 🔴 +836 B
assets/CloudRunButtonWrapper-9sLAMjs1.js (new) 1.99 kB 🔴 +1.99 kB 🔴 +912 B 🔴 +810 B
assets/CloudRunButtonWrapper-BaKtqx80.js (removed) 1.99 kB 🟢 -1.99 kB 🟢 -910 B 🟢 -807 B
assets/graphHasMissingNodes-BjEK8gKQ.js (removed) 1.83 kB 🟢 -1.83 kB 🟢 -863 B 🟢 -752 B
assets/graphHasMissingNodes-kI8zWn2G.js (new) 1.83 kB 🔴 +1.83 kB 🔴 +862 B 🔴 +750 B
assets/cloudBadges-kJ91-RXj.js (new) 1.77 kB 🔴 +1.77 kB 🔴 +892 B 🔴 +767 B
assets/cloudBadges-YPafaIi5.js (removed) 1.77 kB 🟢 -1.77 kB 🟢 -894 B 🟢 -766 B
assets/cloudSubscription-BrasVWmb.js (new) 1.68 kB 🔴 +1.68 kB 🔴 +814 B 🔴 +703 B
assets/cloudSubscription-DKVmvLTA.js (removed) 1.68 kB 🟢 -1.68 kB 🟢 -816 B 🟢 -715 B
assets/previousFullPath-DdbYEQco.js (removed) 1.53 kB 🟢 -1.53 kB 🟢 -693 B 🟢 -600 B
assets/previousFullPath-oaQ_McFJ.js (new) 1.53 kB 🔴 +1.53 kB 🔴 +696 B 🔴 +603 B
assets/Load3D-CoeX3mu5.js (new) 1.34 kB 🔴 +1.34 kB 🔴 +614 B 🔴 +544 B
assets/Load3D-DiqfLPCb.js (removed) 1.34 kB 🟢 -1.34 kB 🟢 -617 B 🟢 -545 B
assets/nightlyBadges-Bkw3TN70.js (new) 1.29 kB 🔴 +1.29 kB 🔴 +657 B 🔴 +580 B
assets/nightlyBadges-BP-sCE6W.js (removed) 1.29 kB 🟢 -1.29 kB 🟢 -659 B 🟢 -582 B
assets/Load3dViewerContent-Brm98T2Z.js (removed) 1.23 kB 🟢 -1.23 kB 🟢 -567 B 🟢 -494 B
assets/Load3dViewerContent-BYLt7eMw.js (new) 1.23 kB 🔴 +1.23 kB 🔴 +567 B 🔴 +496 B
assets/SubscriptionPanelContentWorkspace-DDvfi5SG.js (new) 1.15 kB 🔴 +1.15 kB 🔴 +534 B 🔴 +465 B
assets/SubscriptionPanelContentWorkspace-EvuzJxoh.js (removed) 1.15 kB 🟢 -1.15 kB 🟢 -536 B 🟢 -463 B
assets/WidgetLegacy-B5C2MrqO.js (removed) 978 B 🟢 -978 B 🟢 -483 B 🟢 -423 B
assets/WidgetLegacy-DJXIsGhc.js (new) 978 B 🔴 +978 B 🔴 +482 B 🔴 +425 B
assets/changeTracker-54lZtJCi.js (new) 952 B 🔴 +952 B 🔴 +470 B 🔴 +413 B
assets/changeTracker-DrPEaRgM.js (removed) 952 B 🟢 -952 B 🟢 -472 B 🟢 -413 B

Status: 55 added / 55 removed / 79 unchanged

⚡ Performance

⏳ Performance tests in progress…

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/guidance/playwright.md`:
- Around line 139-158: The migration-candidate TODO block is wrapped in an HTML
comment ("<!-- TODO: Migration candidates — ... -->") so it isn't rendered;
remove the surrounding HTML comment markers and ensure the inner list
(actionbar.spec.ts, changeTracker.spec.ts, selectionToolboxSubmenus.spec.ts,
etc.) remains as plain Markdown so the section is visible in
docs/guidance/playwright.md; keep the existing bullet list and any TODO wording
intact and verify the section renders in the compiled Markdown.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: d2c0af16-8c9b-4d06-a1a3-0fc8ac5b980c

📥 Commits

Reviewing files that changed from the base of the PR and between 82242f1 and 22228fb.

📒 Files selected for processing (1)
  • docs/guidance/playwright.md

DrJKL
DrJKL previously approved these changes Mar 28, 2026
@DrJKL DrJKL assigned christian-byrne and unassigned DrJKL Mar 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants