Repository navigation
Conversation
…mount (#3889) Co-authored-by: Cursor <cursoragent@cursor.com>
🦋 Changeset detectedLatest commit: f67490a The changes in this PR will be included in the next version bump. This PR includes changesets to release 12 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Size (brotli, eager entry chunk)
|
Coverage Report for CI Build 37876195412Coverage remained the same at 76.014%Details
Uncovered ChangesNo uncovered changes found. Coverage RegressionsNo coverage regressions found. Coverage Stats
💛 - Coveralls |
… frame index (#3889) Listing every mount and grouping it with data-fn grew the frames client by about 140 B brotli. A later site keeps its own data-fid (id~n) and the lookup probes that id, so hydration keys stay independent without a second index. Co-authored-by: Cursor <cursoragent@cursor.com>
CI measured the eager frames client at 11,406 B brotli. The cap matches that size, rounded up to 0.01 KB. Co-authored-by: Cursor <cursoragent@cursor.com>
Summary
A server component factory used at two sites rendered two frames under one function id, so both client counters shared one hydration key. The first mount claimed that key and the second button never became its own counter.
Each later site of the same function now gets its own frame scope for
data-fid, hydration keys, and slot records. The function id stays the shared mount identity, and adoption walks those sites in document order. A page that mounts the function once is unchanged.Fixes #3889
Public API
None
Test plan
_hkkeys (test/server/multisite-hydration-3889.spec.tsx)test/hydration/multisite-hydration-3889.spec.tsx)Made with Cursor