Skip to content

docs(perf): Props Composition Lane — the yak tracker hand-off (#3389) - #3702

Merged
ryansolid merged 1 commit into
nextfrom
docs/perf-props-composition-lane
Sep 28, 2026
Merged

ryansolid merged 1 commit into
nextfrom
docs/perf-props-composition-lane

Conversation

@ryansolid

Copy link
Copy Markdown
Member

Closes out #3389 into the performance journal, per the maintainer's call to keep future performance considerations in documentation/ rather than on the tracker.

What's added

documentation/performance-experiments.md — a new lane, Props Composition Lane (2026-09-12 → 2026-09-28): the yak tracker, in the same hand-off shape as the Octane board section:

documentation/benchmarking-strategy.md — yak-bench listed under Tier 2 with a link to the lane.

Public API changes

None — documentation only. No changeset (no packages/ source touched).

Co-authored-by: Claude via Cursor

Made with Cursor

Journal section for #3389 (2026-09-12 → 2026-09-28):
instruments (yak-bench, browser CPU attribution), the thirteen
experiments with their PRs and numbers, the rc.10 client profile that
closed the hydration item, the two 2026-09-28 client probes (spread
walk classify-once: ±1%; plain-only view materialization: +12–14% on
chains) and the rulings that fall out — server views / client copies,
walk and representation are not the client lever, cold tier, perf vs
size — plus the open targets in order, first among them per-row node
count in the reactive core. benchmarking-strategy lists yak-bench under
Tier 2.

Co-authored-by: Claude via Cursor <noreply@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@changeset-bot

changeset-bot Bot commented Sep 28, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 5444283

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions

Copy link
Copy Markdown

Size (brotli, eager entry chunk)

scenario head vs base cap lazy chunks (not counted)
signals: core floor (createSignal/Memo/Effect/Root/flush) 9.51 KB 0 B 9.51 KB ✅
signals: + createStore 16.71 KB 0 B 16.71 KB ✅
signals: + isPending/latest 12.15 KB 0 B 12.16 KB ✅
app: render + one signal (the simple-app floor) 12.05 KB 0 B 12.05 KB ✅
app: hydrating (no stores) with Show/For/Loading/Errored/lazy 19.62 KB 0 B 19.63 KB ✅ lazy-page.js 0.04 KB
app: hydrating + every store primitive family 30.63 KB 0 B 30.63 KB ✅ lazy-page.js 0.04 KB
app: CSR with Show/For/Loading/Errored/lazy 14.91 KB 0 B 14.91 KB ✅ lazy-page.js 0.04 KB
app: CSR, observe tier (same app on the observe artifacts) 16.34 KB 0 B 16.35 KB ✅ lazy-page.js 0.04 KB
app: CSR, observe tier + attribution engine enabled 30.54 KB 0 B 30.54 KB ✅ lazy-page.js 0.04 KB
frames: eager client consumer (frames client + transport, lazy codec) 11.77 KB 0 B 11.77 KB ✅
page: base server components (hydrating + dynamic + frames + sf reference) 44.89 KB 0 B 44.89 KB ✅ decode.js 6.07 KB, lazy-page.js 0.04 KB
page: live server components (base + live/GET + action + isPending/latest) 49.01 KB 0 B 49.02 KB ✅ decode.js 6.07 KB, lazy-page.js 0.04 KB

Bundled with Rolldown (what Vite ships), brotli q11, decimal KB. Caps in scripts/size/scenarios.js; the floor and page caps in floor-caps.json are frozen (lower only, or Size-Exception: in the PR body).

@coveralls

Copy link
Copy Markdown

Coverage Report for CI Build 36464551702

Coverage remained the same at 73.772%

Details

  • Coverage remained the same as the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 1183
Covered Lines: 922
Line Coverage: 77.94%
Relevant Branches: 914
Covered Branches: 625
Branch Coverage: 68.38%
Branches in Coverage %: Yes
Coverage Strength: 27.11 hits per line

💛 - Coveralls

@ryansolid
ryansolid merged commit b10c824 into next Sep 28, 2026
6 checks passed
@codspeed

codspeed Bot commented Sep 28, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 180 untouched benchmarks
⏩ 3 skipped benchmarks1


Comparing docs/perf-props-composition-lane (5444283) with next (fe1eb68)

Open in CodSpeed

Footnotes

  1. 3 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩

@ryansolid
ryansolid deleted the docs/perf-props-composition-lane branch September 30, 2026 19:47
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.

2 participants