diff --git a/scripts/size/floor-caps.json b/scripts/size/floor-caps.json index a5df77624..a5e66f353 100644 --- a/scripts/size/floor-caps.json +++ b/scripts/size/floor-caps.json @@ -16,8 +16,8 @@ "minified": 101559 }, "page: live server components (base + live/GET + action + isPending/latest)": { - "cap": "37.75 KB", - "minified": 115217 + "cap": "37.91 KB", + "minified": 115260 }, "server: floor (getRequestEvent + isServer)": { "cap": "1.34 KB", diff --git a/scripts/size/scenarios.js b/scripts/size/scenarios.js index 9da54e398..630d0790e 100644 --- a/scripts/size/scenarios.js +++ b/scripts/size/scenarios.js @@ -2649,8 +2649,9 @@ module.exports = [ // Keyed optimistic guess folds a correction (D-34, #4210, 2026-10-21, accepted by the maintainer 2026-10-22, re-measured over next @ db8241ce): 30.42 -> 30.66 KB, recorded minified 95,268 -> 95,837 B (+569 B, golfed from +694 B at the maintainer's request), measured locally (linux) at 30,642 B brotli: this scenario carries createOptimisticStore, so it pays for the fold itself (store/optimistic.ts `fold`, `foldedRead`, core `joinPassAt`); a keyed arrangement guess is recognized by its view's removed-keys set. Correctness: two overlapping writes on one keyed store no longer tear the store or remount the confirmed row. Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. // Off-screen fallback disposed in the pass that picks content (#4282 / #4268, 2026-10-26, over next @ fbd375d1): 30.66 KB -> 30.86 KB, recorded minified 95,837 -> 95,113 B (-724 B; +24 B over next), measured in CI at 30,847 B brotli. A re-armed Loading disposes a fallback its committed output does not show in that pass, so the fallback's pending render effects stop holding the frame. Size-Exception accepted by the maintainer (2026-10-26). Cap at measured + 10 B rounded up to 0.01 KB, never lowered; recorded minified = measured. // A rejected fragment's fresh render claims what the server sent (#4319, 2026-10-27, over next @ 0090fe34): 30.86 KB -> 30.96 KB, recorded minified 95,113 -> 95,147 B (+34 B; +18 B over next, the rest #4314's), measured locally (linux) at 30,944 B brotli. The adopting fresh render resets its claim state in a try/finally and owns the snapshot root, so a served error no longer leaves stale claim state for the next hydrate and a Portal under a rejected boundary mounts. Correctness; Size-Exception accepted by the maintainer (2026-10-27). Cap at measured + 10 B rounded up to 0.01 KB, never lowered; recorded minified = measured; CI re-bases. - limit: "30.96 KB", - capMinified: 95147, + // Delegated restore + store fold stamp (#4325 / #4311, #4310, 2026-10-27, over next with #4319): 30.96 -> 30.98 KB, recorded minified 95,147 -> 95,185 B (+38 B), measured locally (linux) at 30,966 B brotli. The store fold keeps the `$OWNER` stamp on a privatized clone (#4310, +15 B), so proxy reads and subscribers see later writes. Delegated dispatch deletes its currentTarget/target overrides when its walk ends (+23 B minified in every web client scenario), so later native listeners read their own currentTarget. Size-Exception accepted by the maintainer (2026-10-27). Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. + limit: "30.98 KB", + capMinified: 95185, alias }, { @@ -5428,6 +5429,7 @@ module.exports = [ // Keyed optimistic guess folds a correction (D-34, #4210, 2026-10-21, re-measured over next @ db8241ce): frozen floor 37.53 -> 37.64 KB, recorded minified 115,011 -> 115,136 B (+125 B: +110 B the lane engine's fold hooks, as `signals: + isPending/latest`, the rest brotli/mangle layout), measured locally (linux) at 37,627 B brotli. Size-Exception: the maintainer accepted the keyed-fold size cost (2026-10-22). Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. // Bug-fix batch (2026-10-26, over next @ 95dd480f): frozen floor 37.64 -> 37.72 KB, recorded minified 115,136 -> 115,193 B (+57 B), measured in CI at 37,710 B brotli. Growth is the 2026-10-26 bug-fix batch: #4279 hydrated Errored runs its content in the hydration pass (+82 B minified), #4281 latest()-first throw (+51), #4280 derived store follows a memo's pending/errors (+15), #4277 outer boundary recovers after an inner rethrow (+11), #4278 per-key isPending (+11), net of #4261 moveBefore (-39) and layout. Size-Exception accepted by the maintainer (2026-10-26). Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. // Off-screen fallback disposed in the pass that picks content (#4282 / #4268, 2026-10-26, over next @ fbd375d1): 37.72 KB -> 37.75 KB, recorded minified 115,193 -> 115,217 B (+24 B; +24 B over next), (floor-caps.json) measured in CI at 37,737 B brotli. A re-armed Loading disposes a fallback its committed output does not show in that pass, so the fallback's pending render effects stop holding the frame. Size-Exception accepted by the maintainer (2026-10-26). Cap at measured + 10 B rounded up to 0.01 KB, never lowered; recorded minified = measured. + // Delegated restore + store fold stamp (#4325 / #4311, #4310, 2026-10-27, over next with #4319): 37.75 -> 37.91 KB, recorded minified 115,217 -> 115,260 B (+43 B), measured locally (linux) at 37,893 B brotli. Frozen floor. Includes #4319's growth on this page, which fit its allowance. Delegated dispatch deletes its currentTarget/target overrides when its walk ends (+23 B minified in every web client scenario), so later native listeners read their own currentTarget. Size-Exception accepted by the maintainer (2026-10-27). Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. limit: floorCaps["page: live server components (base + live/GET + action + isPending/latest)"], capMinified: floorMinified["page: live server components (base + live/GET + action + isPending/latest)"], @@ -5722,8 +5724,9 @@ module.exports = [ // Keyed optimistic guess folds a correction (D-34, #4210, 2026-10-21, accepted by the maintainer 2026-10-22, re-measured over next @ db8241ce): 41.42 -> 41.47 KB, recorded minified 123,010 -> 123,120 B (+110 B: the page carries the lane engine's fold hooks, as `signals: + isPending/latest`), measured locally (linux) at 41,452 B brotli. Correctness. Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. // Bug-fix batch (2026-10-26, over next @ 95dd480f): 41.47 KB -> 41.56 KB, recorded minified 123,120 -> 123,192 B (+72 B), measured in CI at 41,547 B brotli. Same growth as the live floor: the 2026-10-26 bug-fix batch: #4279 hydrated Errored runs its content in the hydration pass (+82 B minified), #4281 latest()-first throw (+51), #4280 derived store follows a memo's pending/errors (+15), #4277 outer boundary recovers after an inner rethrow (+11), #4278 per-key isPending (+11), net of #4261 moveBefore (-39) and layout. Accepted by the maintainer (2026-10-26). Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. // Off-screen fallback disposed in the pass that picks content (#4282 / #4268, 2026-10-26, over next @ fbd375d1): cap 41.56 KB unchanged, recorded minified 123,192 -> 123,216 B (+24 B; +24 B over next), measured in CI at 41,531 B brotli. A re-armed Loading disposes a fallback its committed output does not show in that pass, so the fallback's pending render effects stop holding the frame. Size-Exception accepted by the maintainer (2026-10-26). Cap at measured + 10 B rounded up to 0.01 KB, never lowered; recorded minified = measured. - limit: "41.56 KB", - capMinified: 123216, + // Delegated restore + store fold stamp (#4325 / #4311, #4310, 2026-10-27, over next with #4319): 41.56 -> 41.78 KB, recorded minified 123,216 -> 123,253 B (+37 B), measured locally (linux) at 41,761 B brotli. Includes #4319's growth on this page, which fit its allowance. Delegated dispatch deletes its currentTarget/target overrides when its walk ends (+23 B minified in every web client scenario), so later native listeners read their own currentTarget. Size-Exception accepted by the maintainer (2026-10-27). Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. + limit: "41.78 KB", + capMinified: 123253, alias: pageAlias }, { @@ -6102,8 +6105,9 @@ module.exports = [ // Keyed optimistic guess folds a correction (D-34, #4210, 2026-10-21, accepted by the maintainer 2026-10-22, re-measured over next @ db8241ce): 46.96 -> 47.01 KB, recorded minified 140,292 -> 140,402 B (+110 B: the page carries the lane engine's fold hooks, as `signals: + isPending/latest`), measured locally (linux) at 46,993 B brotli. Correctness. Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. // Bug-fix batch (2026-10-26, over next @ 95dd480f): 47.01 KB -> 47.11 KB, recorded minified 140,402 -> 140,456 B (+54 B), measured in CI at 47,099 B brotli. Same growth as the live floor: the 2026-10-26 bug-fix batch: #4279 hydrated Errored runs its content in the hydration pass (+82 B minified), #4281 latest()-first throw (+51), #4280 derived store follows a memo's pending/errors (+15), #4277 outer boundary recovers after an inner rethrow (+11), #4278 per-key isPending (+11), net of #4261 moveBefore (-39) and layout. Accepted by the maintainer (2026-10-26). Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. // Off-screen fallback disposed in the pass that picks content (#4282 / #4268, 2026-10-26, over next @ fbd375d1): 47.11 KB -> 47.16 KB, recorded minified 140,456 -> 140,480 B (+24 B; +24 B over next), measured in CI at 47,148 B brotli. A re-armed Loading disposes a fallback its committed output does not show in that pass, so the fallback's pending render effects stop holding the frame. Size-Exception accepted by the maintainer (2026-10-26). Cap at measured + 10 B rounded up to 0.01 KB, never lowered; recorded minified = measured. - limit: "47.16 KB", - capMinified: 140480, + // Delegated restore + store fold stamp (#4325 / #4311, #4310, 2026-10-27, over next with #4319): 47.16 -> 47.38 KB, recorded minified 140,480 -> 140,514 B (+34 B), measured locally (linux) at 47,362 B brotli. Includes #4319's growth on this page, which fit its allowance. Delegated dispatch deletes its currentTarget/target overrides when its walk ends (+23 B minified in every web client scenario), so later native listeners read their own currentTarget. Size-Exception accepted by the maintainer (2026-10-27). Cap at measured + 10 B rounded up to 0.01 KB; recorded minified = measured. + limit: "47.38 KB", + capMinified: 140514, alias: pageAlias, conditions: solidConditions, compile: { hydratable: true }