Skip to content

[pull] master from reactive:master#86

Merged
pull[bot] merged 1 commit intoerickirt:masterfrom
reactive:master
Mar 22, 2026
Merged

[pull] master from reactive:master#86
pull[bot] merged 1 commit intoerickirt:masterfrom
reactive:master

Conversation

@pull
Copy link
Copy Markdown

@pull pull bot commented Mar 22, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

…3811)

* demo(benchmark-react): reduce CI benchmark variance below ±10

- Increase warmup and measurement iterations for CI (small: 5+25, large: 3+20)
- Tighten convergence targets (small: 5%, large: 8%)
- Switch from stddev to MAD-based CI margin for robustness against outliers
- Increase inter-scenario GC settle time from 50ms to 200ms

Made-with: Cursor

* demo(benchmark-react): add in-page sub-iterations and reduce variance

- Run multiple ops per page visit (default 5), returning the median
  duration as one sample. Eliminates page-navigation overhead between
  measurements and dramatically reduces variance.
- Add resetStore() to BenchAPI for clearing caches between mount
  sub-iterations (data-client, tanstack-query, swr).
- Vary mutation data each sub-iteration (incrementing counter for
  titles, toggling moveItem direction) to ensure real DOM changes.
- Add waitForPaint between mutation sub-iterations to prevent
  server-resolution renders from bleeding into the next measurement.
- Report variance as percentage instead of absolute values.
- Reduce warmup/minMeasurement counts since sub-iterations provide
  sufficient noise reduction.
- Fix SWR mount sub-iterations: add revalidateOnMount + dedupingInterval: 0
  to ensure fresh fetches after cache.clear().
- Update README with latest results showing ~6778% mutation throughput
  advantage for data-client (up from ~4442% with more accurate measurement).

Made-with: Cursor

* fix: bugbot

* demo(benchmark-react): reduce warmup/measurement counts for faster CI

With 5 sub-iterations per round providing sufficient noise reduction,
lower warmup (small: 3→2, large: 2→1) and max measurement caps
(small CI: 20→15, large CI: 15→12) to cut ~30-40s from CI runtime.

Made-with: Cursor

* Fix benchmark range format for single sample

Co-authored-by: Nathaniel Tucker <me@ntucker.me>

* demo(benchmark-react): fix stats bugs and add per-scenario opsPerRound

- Replace z=1.96 with t-distribution critical values for accurate CI
  on small samples (n=3-15)
- Fix even-length median calculation in scaledMAD/isConverged/computeStats
- Fix median===0 premature convergence (now requires margin===0 too)
- Fix invalidateAndResolve title accumulation bug using fixture data
- Clamp deleteEntity sub-iteration args to mountCount bound
- Remove dead cdp parameter from runScenario
- Add per-scenario opsPerRound override to Scenario type
- Set opsPerRound=9 for update-entity-sorted, =5 for list-detail-switch-10
- Update README with remeasured results and variance tiers

Made-with: Cursor

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
@pull pull bot locked and limited conversation to collaborators Mar 22, 2026
@pull pull bot added the ⤵️ pull label Mar 22, 2026
@pull pull bot merged commit 6b79752 into erickirt:master Mar 22, 2026
1 check failed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant