docs(perf): Store / List Delivery Lane — the Octane board campaign and workflow - #3541
Conversation
…026-08-16 → 09-18) and the board workflow Hand-off for the store/list performance campaign, so it can continue in a fresh session. performance-experiments.md gains the lane: goal and rulings, instruments (Octane fork, local dbmon harness, results dirs), the seven experiments in order with PR/branch, measurement and verdict (patch channel + driver #3079/#3091/#3229, regions branch, unified For slot #3281 / engine #3308, small-move #3227, coarse reads #3275, create-floor diets #3270/#3367/#3368, props/spread/view work), the fixture authoring rules and what the two passes covered, the uibench findings (endpoint cloning 7.7x -> 2.5x; signal shape 0.46x the reconcile shape on 96/96 cases, ruled idiomatic), the todomvc add100 4x that was measurement noise, the Sep 9 -> Sep 17 board with its caveats, standing lessons, and the ordered open targets (disposal first). benchmarking-strategy.md gains the Octane board workflow: fork/branch, linking next, running, comparing, the gotchas each learned the hard way, and the single-op profiling method. Co-authored-by: Claude via Cursor <noreply@cursor.com>
|
Coverage Report for CI Build 35374180919Coverage remained the same at 71.366%Details
Uncovered ChangesNo uncovered changes found. Coverage RegressionsNo coverage regressions found. Coverage Stats
💛 - Coveralls |
Merging this PR will not alter performance
Comparing Footnotes
|
Docs only. Hand-off for the store/list performance campaign (2026-08-16 → 2026-09-18) so it can continue in a fresh session without the chat history.
documentation/performance-experiments.md— new lane section:region-delivery), unified For slot (feat(solid,web): unified For — one slot owns rows and placement, default-on via For's module graph #3281) → engine (feat: unified For is the keyed-For engine — all modes, no seam, mapArray as the oracle #3308), small-move (perf(signals): mapArray small-move fast path for keyed reorders #3227), coarse reads (perf(signals): witness coarse-read machinery — one node per record subtree #3275), create-floor diets (perf(signals): store create-floor diet — slot-signal literals + first-read dedupe #3270, perf(signals): narrow store writes clone by spread; overlay only for wide owned backings (#3360 part 1) #3367, perf(store): stamp owned backings with $OWNER instead of weak-collection registrations #3368), props/spread/view perf (perf(web,signals): spread() reads a merge() proxy through its sources #3325, fix(web,babel-plugin,compiler): object-valued style/class bindings are read tracked — readShallow() primitive #3326, perf(signals,web,universal,html): merge/omit are always lazy views; consumers read the leaves #3454, perf(signals,web): views build their key table on enumeration or after 16 reads; ssrElement walks a view's entries #3475, perf(web): spread() creates fewer reactive nodes and accepts a sources array #3419, perf(signals,web): omit over a merge holds the merge record — one record per layer, one-pass owners walk for ssrElement #3497, perf(signals,web): dynamic(source, { static }) and isStatic(o, key) #3471, perf(web,signals): trim per-node work on the hydration claim path #3513, fix(signals): treat a plain merge() result as an ordinary source (#3384) #3401/perf(signals): shared traps for merge()/omit() proxies, state on the target #3403 → Compiler: props literals with accessors are the largest SSR self-time bucket on composition cases (computed keys + closure-per-getter) #3511)add100: the 4× that was measurement noise, and the rule for reading sub-5 ms opsShow's redundant memo, chat-stream fan-outDESIGN-CONSOLIDATION.md, refactor(signals): move 3b — one implementation per rule for value selection; five store/signal parity fixes #3523/refactor(signals): the store's backing visibility on the shared predicates — one holdVisible (move 3b, deletion half) #3525) as the code most recently touched on the disposal pathdocumentation/benchmarking-strategy.md— "Octane board workflow": where, linkingnext, running, comparing, the gotchas (Playwright env, detached processes, 8-sample medians, timed-vs-structural ops, Octane drift, bundle split, signal-favoring), and the single-op profiling method.No source changes; no changeset.
Made with Cursor