You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Flinging up a long thread waits at "Loading older messages…" because older history starts loading only 600 px ahead #7223
Flinging up through a long thread on a phone or with a trackpad reaches the top of the loaded history before the next page arrives. You wait at a blank "Loading older messages…" edge, about 1 s per page at 300 ms network latency and 2.6 s at 900 ms. Expected: the next page is usually in place by the time a steady fling gets there.
Versions and environment
main at e61446e15, built from source, headless Chromium 143 (Android UA with touch, and desktop with a wheel), older-page requests delayed 300 or 900 ms. Thread seeded with pnpm seed:perf -- --projects 1 --threads 4 --events 16000 --seed 7 (the 180-turn thread).
Steps to reproduce
Open the longest seeded thread at the bottom.
Fling up repeatedly (touch, or wheel bursts), about two per second.
Watch the top of the timeline when the loaded history runs out.
Expected vs actual
Actual: "Loading older messages…" sits on screen for 1,022 ms (300 ms latency) or 2,572 ms (900 ms latency) per 16-fling climb on Android, and 817 / 2,616 ms on desktop (3 runs each). Expected: little or no time at the loading edge during a steady climb.
Server time is not the cause: locally the server answers a 162 KB timeline page in 4–9 ms (5 curl requests), and the delay added here stands in for the network. The wait comes from when the request starts.
Classification: Bug · Priority: Medium · Effort: Medium. Applied labels: threads, perf, partial-repro; no existing classifications were replaced.
Reproduction report: PARTIALLY REPRODUCED · High confidence in the root-cause mechanism. Native touch/wheel behavior and aggregate timings remain unverified because Chrome/Chromium is unavailable.
Root cause: The fixed 600 px threshold provides only about 150 ms of lead at 4,000 px/s, so delayed older-page loads remain pending at the loaded edge.
Evidence: The same diagnostic readiness assertion fails at 300/900 ms page latency in two clean trusted-main checkouts; all 36 related existing tests pass. The report includes the test and both run logs.
Activity
bb-slop-cop commentedon Nov 7, 2026
🚨 SLOP COP 🚨 ·
new-issue-autopilotthreads,perf,partial-repro; no existing classifications were replaced.