docs(research): interaction borderline perf diagnostic (real over-budget on pretable filter-text)#134
Merged
Merged
Conversation
Verdict: pretable filter-text is real-over-budget (16.79 ± 0.31 ms at n=20); tanstack vs pretable filter-metadata is noise-tied (1.6 ms mean diff vs 23 ms 2σ noise floor — tanstack's σ at n=8 is 11.6 ms). Incidental finding: pretable filter-metadata is also over budget at the mean (17.51 ± 2.44 ms). PR #131's 16.0 ms n=3 reading was a low-end sample. Homepage prose claims filter-metadata is "clear of" the single-frame budget; that's no longer accurate. Three recommendations queued (editorial cleanup + perf-fix investigation); see memo for details. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
Vercel preview readyPreview: https://pretable-9q0cp73pq-cacheplane.vercel.app Updated automatically by the |
This was referenced May 13, 2026
blove
added a commit
that referenced
this pull request
May 13, 2026
…indings (#141) * fix(website): editorial follow-up to PR #134 interaction borderline findings Acts on the four recommendations from PR #134's interaction borderline memo (decisions captured in repo-memory): - /bench Interactions section prose: honest reframe — "~1 ms over budget on all three scripts; 2-3.5× faster than every measured comparator." Includes the n=20 numbers (sort 17.10 ± 1.83; filter-metadata 17.51 ± 2.44; filter-text 16.79 ± 0.31). - ComparisonTable interaction rows: dropped the ≤ 16 budget reference (set to "—"); scroll rows keep their budget column. Replaced PR #131's n=3 numbers with the n=20 set; sort n=20 captured fresh in this PR (pretable-only matrix run, 17.10 ± 1.83 ms). - TanStack trail-marker label: dropped the "(filter-metadata ties pretable)" parenthetical. Tie was sampling noise at n=3; tanstack's distribution at higher repeats spans 8-42 ms. - Perf-fix investigation queued as a follow-up PR (wrapped-text filter pipeline is the shared root cause for all three interaction scripts landing over the single-frame budget). No test changes required: the TanStack regex (/headless.*slower interaction/i) still matches the shortened label. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * fix(website): drop ties-pretable parenthetical from /bench interaction verdict helper Mirrors the homepage TanStack trail-marker change. The n=20 verdict in PR #134 showed the n=3 'tie' was sampling noise; the page's verdict helper no longer renders the parenthetical even when the underlying summary still has the n=3 numbers that triggered the < 5% ratio test. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
4 tasks
blove
added a commit
that referenced
this pull request
May 13, 2026
* docs(specs): pretable wrapped-text filter perf diagnostic design Three-phase pattern (trace + analyze + memo) with conditional fix in same PR. Mirrors PR #124 / PR #133 with a Phase D escape hatch for single-cause low-risk fixes. Targets pretable's interaction scripts landing 1-2 ms over the 16 ms single-frame budget on Chromium S2/hypothesis (PR #134 finding). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * docs(plans): pretable wrapped-text filter perf diagnostic plan Five-task plan: trace capture, manual analysis, memo, conditional fix, gates + PR. Auto-merge if memo-only; hold if a fix ships. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * chore(bench): Playwright trace for pretable filter-text perf diagnostic * docs(research): pretable wrapped-text filter perf diagnostic memo * style(docs): prettier format perf diagnostic memo + plan + spec * chore: remove force-added trace binary; project convention is no committed traces The trace was captured locally per the spec but force-added past .gitignore — the project's standing pattern is `status/traces/*.zip` is gitignored. Removing the binary; memo updated to note the trace is local-only and that Playwright's default action-trace format doesn't capture per-function timeline data anyway (the real blocker for this investigation, separately documented in the memo's "bench-harness gap" follow-up). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * docs(research): memo references local-only trace; no committed binary The trace path reference in the memo was pointing at a binary that was force-added past .gitignore and then removed in the prior commit. Update the reference to note the trace is local-only and the Playwright action-trace format wouldn't have given flame-graph data anyway. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Tightens PR #131's two borderline numbers via n=20 re-run. No auto-merge — real-over-budget verdict on pretable filter-text requires editorial review.
Incidental finding: pretable
filter-metadatais also over budget at the mean (17.51 ± 2.44 ms at n=20). PR #131's 16.0 ms n=3 reading was a low-end sample.Full data
Recommendations (in the memo)
/benchpage prose: move filter-text + filter-metadata out of the "clears the budget" set.All four are editorial / scoping decisions the user should weigh in on before any homepage change ships.
Matrix wall-clock note
Original matrix flaked at ~22% (PR #133 had the same pattern); ran a follow-up tanstack-only matrix that also flaked early. Final sample counts: pretable 20+20, tanstack 8+6. Tight enough for unambiguous verdicts.
Test plan
🤖 Generated with Claude Code