ta
TanStack
GitHub
router
Workspace
GitHub
CI Pipeline Executions
Filtered
Runs
Demo
Insights
Compare tasks
Analytics
Sign in
Toggle sidebar
Overview
⌘K
router
Loading workspace stats
Loading workspace insights...
Statistics interval
7 days
30 days
Latest CI Pipeline Executions
Status
Fix filter
Filter
Fuzzy
Filter range
Sort by
Sort by
Start time
Sort ascending
Sort descending
GitHub
router
Workspace
Succeeded
8222
11997c86 perf(router-core): share settle chain between superseded navigation waiters `awaitCurrent` looped `await current.done` and re-read `router._tx` after each completion. Under back-to-back navigations (anything that starts the next navigation in the same tick as `onRendered`, including the client-nav benchmarks) every superseded waiter woke on every successor, so a burst of N navigations cost N²/2 microtask iterations and kept every superseded transaction alive until the router went idle. Memoize one "settled" promise per transaction that follows successors recursively, and have every waiter await that. Semantics are unchanged: a waiter resolves once the router has settled on a transaction other than its owner. Measured in benchmarks/client-nav (react, navigations per 10s, jsdom): baseline 15.4K -> 44.7K, route-tree-scale 17.9K -> 98.2K, search-params 16.5K -> 54.8K. The instrumented baseline run showed 125.8M loop iterations for 15,867 navigations before the change. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01C1tX2n8xegVBsZqoJPu7iv
by Sheraff
S
Previous
Next