docs(research): close filter-text perf-fix investigation (PRs #142-146)#147
Open
blove wants to merge 1 commit into
Open
docs(research): close filter-text perf-fix investigation (PRs #142-146)#147blove wants to merge 1 commit into
blove wants to merge 1 commit into
Conversation
After the full diagnostic pipeline (CDP tracing → trigger gating → sourcemaps → interaction-window slicing), single-trace data shows in-window scripting for filter-text is ~5 ms, of which the leading hotspot (`matchesFilters`) is ~0.7 ms. PR #134's n=20 p95 is 16.79 ms; the ~10 ms gap is in paint/composite/native browser work that scripting fixes can't move. Even eliminating matchesFilters entirely would only get filter-text to ~16.0-16.2 ms — still grazing. Investigation closed. Infrastructure (analyzer, sourcemaps, slicing, markers) is production-ready and reusable. Homepage prose (PR #141) accurately reflects state: real-but-over-budget; pretable 2-3.5× faster than every comparator. Memory updated with the lesson that single-trace n=1 is not enough for borderline budget misses. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
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
Closes the wrapped-text filter perf-fix investigation thread (PRs #142, #143, #144, #145, #146) without a production code fix.
Why no fix
With the full diagnostic pipeline now in place (CDP tracing + sourcemaps + interaction-window slicing), single-trace data for `pretable / S2 / hypothesis / filter-text` shows:
The ~10 ms gap between single-trace and p95 is in paint/composite/native browser work that the V8 CPU profiler doesn't fully attribute. Even reducing the entire `matchesFilters` cost to zero would only get filter-text to ~16.0-16.2 ms — still grazing the 16 ms single-frame budget.
A `WeakMap<row, lowercase-cell>` cache for `matchesFilters` would help real-world multi-character typing but not the single-trigger bench scenario. It can ship as a small standalone PR if real-user UX is the motivation, but framing it as "fixing the bench miss" would be misleading.
What this investigation produced
The infrastructure is production-ready and reusable for any future bench-perf investigation.
Lessons captured (in repo memory)
Recommended next steps (for anyone who returns)
Gates
🤖 Generated with Claude Code