* Refactor Gemini model display: filter old versions, group low/high pro, and improve naming * Fix potential negative minutes and refine Gemini 3 Pro grouping logic based on PR feedback * The account change process has been sped up * Address PR review: enhance error message and parameterize polling interval in process handler * Address PR review: fix potential race condition in database backup logic * fix: prevent renderer white screen and harden sentry gating * feat: localize model labels * chore: enable hoisted node-linker * chore: ignore .agent/.claude/.codex in prettier --------- Co-authored-by: Draculabo <[email protected]>
1006 B
1006 B
title, impact, impactDescription, tags
| title | impact | impactDescription | tags |
|---|---|---|---|
| Minimize Serialization at RSC Boundaries | HIGH | reduces data transfer size | server, rsc, serialization, props |
Minimize Serialization at RSC Boundaries
The React Server/Client boundary serializes all object properties into strings and embeds them in the HTML response and subsequent RSC requests. This serialized data directly impacts page weight and load time, so size matters a lot. Only pass fields that the client actually uses.
Incorrect (serializes all 50 fields):
async function Page() {
const user = await fetchUser(); // 50 fields
return <Profile user={user} />;
}
('use client');
function Profile({ user }: { user: User }) {
return <div>{user.name}</div>; // uses 1 field
}
Correct (serializes only 1 field):
async function Page() {
const user = await fetchUser();
return <Profile name={user.name} />;
}
('use client');
function Profile({ name }: { name: string }) {
return <div>{name}</div>;
}