Skip to content

fix(design): reduce large canvas iframe churn during pan - #5612

Merged
steve8708 merged 2 commits into
mainfrom
steve8708/design-perf-virtualization
Sep 22, 2026
Merged

steve8708 merged 2 commits into
mainfrom
steve8708/design-perf-virtualization

Conversation

@steve8708

@steve8708 steve8708 commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

The large canvas culling pool rebuilt too many preview iframes after a settled pan/zoom because the 1.5 viewport overscan band was too narrow for the gesture's committed camera movement. Widening the band to 2 viewport lengths keeps nearby screens warm and reduces iframe mount/unmount churn while retaining the existing live pool and iframe ceilings.

Validation:

  • pnpm exec vitest run app/components/design/MultiScreenCanvas.culling.test.ts - 44 passed
  • pnpm exec oxfmt --check ... - passed
  • git diff --check - passed
  • Detached HEAD started at origin/main a1443cd.

@steve8708
steve8708 force-pushed the steve8708/design-perf-virtualization branch from 17078d1 to 6c8c335 Compare September 22, 2026 10:51
@github-actions

github-actions Bot commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

Here's a visual recap of what changed:

Visual recap

Open the full interactive recap

@github-actions
github-actions Bot temporarily deployed to pr-5612-design September 22, 2026 10:59 Destroyed
builder-io-integration[bot]

This comment was marked as outdated.

@github-actions
github-actions Bot temporarily deployed to pr-5612-design September 22, 2026 11:21 Destroyed

@builder-io-integration builder-io-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Builder reviewed your changes — looks good ✅

Review Details

Code Review Summary

The latest PR head keeps the narrowly scoped performance change that raises the design overview culling overscan factor from 1.5 to 2. This is intended to keep nearby preview screens and iframes warm across the debounced camera commit, while preserving the existing live-screen and iframe ceilings.

The previously identified test gap is addressed: the new culling test uses distinct raw and expanded viewport bounds and verifies that an overscan-only screen is admitted before it reaches the raw viewport. The focused suite reportedly passes with 45 tests. Two independent relaxed reviews found no confirmed runtime, geometry, resource-bound, security, or functional regression.

Risk assessment

Low risk: this is a localized UI performance tuning change with no API, data, authentication, or persistence impact. The implementation and regression coverage are consistent with the stated behavior.

🧪 Browser testing: Will run after this review (PR touches UI code); the attempted run was blocked because the browser-test executors still had no Chrome automation tools available.

@steve8708
steve8708 merged commit b001599 into main Sep 22, 2026
48 checks passed
@steve8708
steve8708 deleted the steve8708/design-perf-virtualization branch September 22, 2026 11:47

This branch was successfully deployed

No deployments
pr-5612-design 1ca7b8d5 Deployed Sep 22, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant