test(app): add long-session input lag perf guard#624
Conversation
There was a problem hiding this comment.
Suggested priority: P3 (only low-risk paths changed (packages/app/e2e/perf/perf-probe.spec.ts, packages/app/e2e/perf/profiles.ts, packages/app/e2e/perf/profiles.unit.ts)).
P1/P0 are reserved for maintainer confirmation. Please relabel manually if this is a release blocker, security issue, data-loss risk, or updater/runtime failure.
|
Warning Rate limit exceeded
You’ve run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThis PR adds a new performance scenario named ChangesLong-session input lag performance scenario
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Warning Review ran into problems🔥 ProblemsGit: Failed to clone repository. Please run the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Code Review
This pull request introduces a new performance test scenario, "long-session-input-lag," designed to measure input responsiveness during long sessions with realistic message history. The changes include the test implementation in perf-probe.spec.ts, updates to the performance profile configurations, and a new unit test. Feedback was provided to replace the use of innerText with textContent in a helper function to avoid synchronous layout reflows that could introduce noise into the performance metrics.
Perf delta summaryComparator: pass
|
Summary
long-session-input-lagperf scenario.Why
#615 calls out typing lag in long sessions as a user-visible performance symptom, and #599 now tracks the May UI rewrite launch contract. Existing PR0 coverage protects streaming, tool expansion, scroll reading, timeline recompute, terminal open, and heavy default-open bash output, but did not directly measure composer typing inside a long session.
This PR adds that guard without changing UI behavior, message rendering, scroll ownership, virtualization, or diff rendering.
Related Issue
Related to #615 and #599.
Human Review Status
Pending. A human should make the final merge decision after reviewing the final diff and verification evidence.
Review Focus
Please focus on whether the scenario boundary is narrow enough: stable long-session fixture, reset after composer focus, fixed ASCII typing text, existing metrics capture, and default-profile routing only.
Risk Notes
Low. This only changes perf test coverage. It may add a small amount of runtime to the default perf probe workflow because the new scenario runs three browser samples.
How To Verify
Screenshots or Recordings
Not required. This PR adds perf guard coverage only and does not change visible UI.
Checklist
dev, and my PR title and commit messages use Conventional Commits in EnglishSummary by CodeRabbit