Skip to content

docs(research): pretable scroll-with-render perf diagnostic (noise verdict)#133

Merged
blove merged 4 commits into
mainfrom
pretable-scroll-with-render-perf-diag
May 11, 2026
Merged

docs(research): pretable scroll-with-render perf diagnostic (noise verdict)#133
blove merged 4 commits into
mainfrom
pretable-scroll-with-render-perf-diag

Conversation

@blove
Copy link
Copy Markdown
Contributor

@blove blove commented May 11, 2026

Summary

Diagnoses whether pretable's `scroll-with-render` 6 ms gap from PR #130 (16.4 ms vs ~10.3 ms for format + heavy-render at n=3) is real or a low-sample artifact. Verdict: noise. Mirrors PR #124's pattern at larger magnitude.

Verdict

At higher repeats, `scroll-with-render` is at parity with (in fact marginally faster than) `scroll-with-format` and `scroll-with-heavy-render`:

Script n mean (ms) σ (ms)
scroll-with-format 8 9.36 0.80
scroll-with-render 7 8.97 0.35
scroll-with-heavy-render 6 9.15 0.13

Both 2σ pairs are well within the noise floor:

  • cheap vs format: 0.39 ms diff vs 1.60 ms noise floor → within noise
  • cheap vs heavy: 0.18 ms diff vs 0.70 ms noise floor → within noise

The PR #130 cheap-render value of 16.4 ms is ~21σ away from the observed distribution — statistically impossible at this sample size.

No perf-fix PR needed. No React-reconciliation cliff exists between single-text-child and multi-child spans in pretable's MemoizedCellContent path.

Sample size caveat

The matrix completed only ~36 % of planned repeats (Playwright flake; not investigated). Sample counts came out 6–8 per script instead of n=20. Documented in the memo; the observed σ values make the verdict unambiguous regardless — a 6 ms gap couldn't hide in this distribution.

What's NOT in this PR

  • Code changes — verdict is noise; no fix needed.
  • Trace capture (Phase B) — skipped per the plan's noise-verdict branch.
  • Bench-matrix default-repeat protocol changes — recommendation noted in the memo but not actioned.

Test plan

  • `pnpm -w typecheck` passes (no source changes)
  • `pnpm -w lint` 0 errors
  • `pnpm format` clean
  • Milestone JSON + memo committed under `status/milestones/` and `docs/research/`

🤖 Generated with Claude Code

blove and others added 4 commits May 11, 2026 13:28
Three-phase research PR mirroring PR #124's pattern: high-repeat (n=20)
re-run, conditional Playwright trace capture, research memo. Diagnoses
whether the PR #130 cheap-render anomaly (16.4 ms vs 10.3 ms for format
and heavy-render) is real or a low-sample artifact.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Seven-task plan mirroring PR #124's three-phase pattern: n=20 matrix
re-run, conditional Playwright trace capture, research memo.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Verdict: noise. The PR #130 cheap-render anomaly (16.4 ms vs ~10.3 ms
for format and heavy-render at n=3) was a sampling artifact. At higher
repeats, scroll-with-render is at parity with (in fact marginally
faster than) the other two:

| Script                     |   n | mean (ms) |   σ (ms) |
| -------------------------- | --: | --------: | -------: |
| scroll-with-format         |   8 |      9.36 |     0.80 |
| scroll-with-render         |   7 |      8.97 |     0.35 |
| scroll-with-heavy-render   |   6 |      9.15 |     0.13 |

Both 2σ pairs (cheap-vs-format, cheap-vs-heavy) are well within the
noise floor. Same shape as PR #124's finding at larger magnitude.

The matrix run completed only ~36% of planned repeats (Playwright
flake; not investigated) but the observed σ values make the verdict
unambiguous — PR #130's 6 ms gap is ~21σ away from the observed
distribution. No perf-fix PR needed.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@blove blove enabled auto-merge (squash) May 11, 2026 20:34
@vercel
Copy link
Copy Markdown

vercel Bot commented May 11, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
pretable Ready Ready Preview, Comment May 11, 2026 8:35pm

@blove blove merged commit e88d3d6 into main May 11, 2026
13 checks passed
@blove blove deleted the pretable-scroll-with-render-perf-diag branch May 11, 2026 20:37
@github-actions
Copy link
Copy Markdown
Contributor

Vercel preview ready

Preview: https://pretable-d07kph9m5-cacheplane.vercel.app
Commit: a19d62309cbb6137ce1841f21ce0a79cd2760e08

Updated automatically by the deploy-preview job.

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