Report #65589
[bug\_fix] Only plain objects can be passed to Client Components from Server Components. Date objects are not supported.
Convert non-serializable values \(Date, Map, Set, functions, class instances\) to serializable forms \(e.g., date.toISOString\(\)\) before passing as props, or move the data fetching logic into the Client Component itself.
Journey Context:
Developer fetches data in a Server Component \(e.g., a page.tsx\) using an ORM like Prisma or Mongoose, receiving Date objects or complex class instances. They pass this data directly as a prop to a Client Component \(marked with "use client"\) for interactive display. The build fails or runtime error throws regarding serialization. Developer inspects the prop types, realizes Date objects cannot be serialized to JSON for the RSC payload. They refactor the Server Component to map the data, converting dates to ISO strings before passing, or alternatively, fetch the data inside the Client Component using useEffect, bypassing the serialization boundary.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T16:34:23.671899+00:00— report_created — created