Skip to content

perf: drop the progress overlay and dead diagnostics, tighten collection timing - #685

Merged
KrX3D merged 1 commit into
mainfrom
perf/drop-overlay-and-tune
Aug 29, 2026
Merged

perf: drop the progress overlay and dead diagnostics, tighten collection timing#685
KrX3D merged 1 commit into
mainfrom
perf/drop-overlay-and-tune

Conversation

@KrX3D

@KrX3D KrX3D commented Aug 29, 2026

Copy link
Copy Markdown
Owner

Confirmed working on-device: 21:01:21.147 page load → 21:01:23.738 injected = 2.59s, down from ~10.5s. A second playlist in the same session returned from cache in 0.38s.

Removed

  • The Playlist: loading batch N… overlay. It earned its place when collection took ten seconds; now it flashes on and off within a couple of seconds immediately before a reload.
  • The continuation stack-trace capture — it built and logged a 45-frame string on every continuation request, for an investigation that's closed (the stack showed an observable chain with no callable trigger; that's recorded in history). Pure per-request cost now.

Timing

  • NATIVE_SETTLE_MS 1200ms → 700ms. Native continuations arrive ~200ms apart (21:01:21.508, .690, burst ends .758), so 700ms of quiet is already a clear end-of-burst signal.
  • Pace only between our own fetches — the first needs no delay, since nothing of ours precedes it and the scheduler just waited out the native burst. With seeding usually leaving one batch, that was pure latency.

Roughly 900ms off the common case.

On unused functions: nothing is actually unreferenced. The suspects I checked (_triggerReveal, _verifyAutoLoadEffect, dumpHelperTileStructure, attemptPlaylistAutoLoad) all still have live callers. The two removed here were live but obsolete. _verifyAutoLoadEffect and dumpHelperTileStructure are the next candidates if helper behaviour stays fixed, but both are capped and cheap, so I left them.

…ion timing

Measured on-device after the seeding fix: 21:01:21.147 page load ->
21:01:23.738 injected, so 2.59s, down from ~10.5s. A second playlist in the
same session came back in 0.38s from cache. Trimming what is left.

Removed:
- The "Playlist: loading batch N…" overlay (_showProgress/_hideProgress and
  their call sites). It was useful while collection took ten seconds; now it
  appears and disappears inside a couple of seconds, immediately before a
  reload, which is just flicker.
- The continuation stack-trace capture. It built and logged a 45-frame
  string on EVERY continuation request, for an investigation that is closed
  — the stack showed the request is driven through an observable chain with
  no callable trigger, which is recorded in the commit history. Pure
  per-request cost now.

Timing:
- NATIVE_SETTLE_MS 1200ms -> 700ms. Native continuations arrive ~200ms
  apart (measured: 21:01:21.508, .690, and the burst ends by .758), so 700ms
  of quiet is already a clear end-of-burst signal.
- Pace only BETWEEN our own fetches. The first needs no delay: nothing of
  ours precedes it and the scheduler has just waited out the native burst.
  With seeding usually leaving a single batch to fetch, that delay was
  pure latency on the critical path.

Together roughly 900ms off the common case.

Note on unused code: nothing is now unreferenced — the checked suspects
(_triggerReveal, _verifyAutoLoadEffect, dumpHelperTileStructure,
attemptPlaylistAutoLoad) all still have live callers. The two removed here
were live but obsolete rather than unreachable. _verifyAutoLoadEffect and
dumpHelperTileStructure are the next candidates if the helper behaviour
stays fixed, but both are capped and cheap, so they are left for now.
@KrX3D
KrX3D merged commit c4fe4f6 into main Aug 29, 2026
3 checks passed
@KrX3D
KrX3D deleted the perf/drop-overlay-and-tune branch August 29, 2026 21: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