Skip to content

fix(website): homepage interaction wedge refresh (B2 follow-up)#132

Merged
blove merged 7 commits into
mainfrom
b2-followup-interaction-homepage-refresh
May 11, 2026
Merged

fix(website): homepage interaction wedge refresh (B2 follow-up)#132
blove merged 7 commits into
mainfrom
b2-followup-interaction-homepage-refresh

Conversation

@blove
Copy link
Copy Markdown
Contributor

@blove blove commented May 11, 2026

Summary

Lands the PR #131 sort + filter comparator wedge on the homepage. Three editorial surfaces touched; no source/package changes.

No auto-merge. Three editorial surfaces means prose review — please read the prose drafts below and confirm before merging.

What changed

  • `apps/website/app/components/ComparisonTable.tsx` — three new interaction rows between `scroll anchor shift (px)` and `headless engine + React surface`. Section subhead gets one new sentence. Header docblock cites the new milestone source.
  • Trail-marker labels rewritten on three comparators (`pretable` unchanged).
  • `apps/website/app/bench/page.tsx` — placeholder Interactions section replaced with a real section paralleling the H1 scroll layout (loader + verdict helper + table + two prose paragraphs).
  • `scripts/extract-interaction-summary.mjs` + `status/milestones/2026-05-10-b2-sort-filter-summary.json` — one-shot aggregator + the milestone summary it produces from PR feat(bench): B2 follow-up #5b — sort + filter comparator wiring #131's per-run JSONs.
  • `apps/website/tests/components/ComparisonTable.test.tsx` — regex regression-guards for the new trail-marker labels.
  • `docs/research/repo-memory.md` — 2026-05-11 entry.

Comparison table — new interaction rows

metric pretable AG Grid TanStack MUI X budget
sort latency p95 (ms) — interaction 16.5 58.3 34.4 35.0 ≤ 16
filter-metadata latency p95 (ms) 16.0 49.9 15.7 33.4 ≤ 16
filter-text latency p95 (ms) 17.7 50.0 40.2 33.3 ≤ 16

Trail-marker label diff

Adapter Before After
pretable Recommended path unchanged
AG Grid Slower scroll; row-height drift 1.7× slower scroll, 3× slower interaction; row-height drift
TanStack Headless; you wire selection and nav Headless; ~2× slower interaction (filter-metadata ties pretable)
MUI X Parity at scroll p95; full-grid feature surface Scroll-p95 parity; 2× slower interaction

The MUI X label is the most consequential change — the prior "parity at scroll p95" framing read positively about MUI; the new label preserves that half of the story while adding the interaction caveat.

ComparisonTable subhead — new closing sentence

Wrapped-text scroll at 3,000 rows on Chromium, against the three most-cited React grids. Pretable matches MUI at the front, ~1.7× ahead of AG Grid Community and TanStack on raw frame p95 — and is the only adapter here that clears every quality threshold (zero blank gaps, zero anchor shift, ≤1 px row-height drift) at full-grid feature weight. Interactive sort and filter run 2–3.5× faster than every measured comparator on the same dataset.

/bench page Interactions section — prose draft

Pretable sorts and filters 3,000 wrapped-text rows in 16–18 ms across all three scripts — clear of the single 60Hz frame budget on `filter-metadata` and `sort`, fractionally over on `filter-text`. AG Grid Community runs sort and filter 3–3.5× slower despite being a full feature-surface grid; MUI X DataGrid Community lands at roughly 2× across all three scripts. TanStack Table v8 + TanStack Virtual is the only comparator that ties pretable on a single metric — `filter-metadata` at 15.7 ms vs 16.0 ms, within run noise — but is 2.1× slower on sort and 2.3× slower on `filter-text`.

Like the scroll story, the H6/H7/H8 evaluators check pretable's absolute thresholds (`≤ 32 ms` interaction p95) rather than gating on comparator parity. All three hypotheses stay satisfied at n=3.

What's NOT in this PR

Test plan

  • `pnpm -w typecheck` passes
  • `pnpm -w test` passes (190 website tests; trail-marker regex regression-guards updated)
  • `pnpm -w lint` 0 errors
  • `pnpm format` clean

🤖 Generated with Claude Code

blove and others added 7 commits May 11, 2026 08:53
Six-task plan: aggregator script + milestone summary, ComparisonTable
rows + labels, tests, /bench Interactions section, repo-memory, gates +
PR (no auto-merge).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Three labels changed in the prior commit (AG Grid + TanStack + MUI X)
to reflect the interaction wedge from PR #131. Regex assertions
updated to match the new label phrasings:

- AG Grid: "1.7× slower scroll, 3× slower interaction; row-height drift"
- TanStack: "Headless; ~2× slower interaction (filter-metadata ties pretable)"
- MUI X: "Scroll-p95 parity; 2× slower interaction"

The pretable "Recommended path" assertion is unchanged.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…mparator data

Replaces the placeholder paragraph that said "comparative interaction
evidence is on the roadmap" with a real section paralleling the H1
scroll layout. Driven by the new aggregated milestone summary at
status/milestones/2026-05-10-b2-sort-filter-summary.json (built from
PR #131's per-run summaries).

New loader (loadInteractionSummary) + verdict helper
(interactionVerdictFor) mirror the existing scroll-side patterns. The
verdict helper computes per-script ratios against the fastest adapter
and annotates the TanStack filter-metadata tie inline ("2.1–2.6×
slower (filter-metadata ties pretable)").

Per-adapter latency table + two prose paragraphs match the H1 section's
structure for visual consistency.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Documents the three editorial surfaces touched (ComparisonTable rows +
trail-markers, /bench Interactions section, aggregated summary file),
the deliberate non-goals (ReceiptsBand owned by PR #129, n=20 follow-up
deferred), and the remaining open threads from B2.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@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 4:31pm

@github-actions
Copy link
Copy Markdown
Contributor

Vercel preview ready

Preview: https://pretable-cdqzdb5nx-cacheplane.vercel.app
Commit: 25ecc88b6168aa44c8726e24dad06081078508fe

Updated automatically by the deploy-preview job.

@blove blove merged commit 1c7fcf8 into main May 11, 2026
14 checks passed
@blove blove deleted the b2-followup-interaction-homepage-refresh branch May 11, 2026 20:11
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