From 04f01e661a17d19f682cb6ceaf9530c60bca4013 Mon Sep 17 00:00:00 2001 From: Hiroshi Ogawa <4232207+hi-ogawa@users.noreply.github.com> Date: Fri, 17 Jul 2026 13:03:11 +0900 Subject: [PATCH] docs(plugin-rsc): explain preserved reference validation Co-authored-by: OpenCode --- packages/plugin-rsc/src/plugin.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/plugin-rsc/src/plugin.ts b/packages/plugin-rsc/src/plugin.ts index a17fbc79c..86cbba631 100644 --- a/packages/plugin-rsc/src/plugin.ts +++ b/packages/plugin-rsc/src/plugin.ts @@ -366,6 +366,10 @@ export function vitePluginRscMinimal( (meta) => meta.referenceKey === parsed.id, ) if (!meta) { + // Server references decoded by `createFromReadableStream` with + // `preserveServerReferences` can reach action loading without their + // modules entering the graph during replay. Transform the target on + // demand to populate metadata before validating its ID. try { // https://github.com/vitejs/vite/blob/a477454442eff649b430f9e3c6caf2500fcb7183/packages/vite/src/node/server/transformRequest.ts#L170-L175 const resolved = await this.resolve(parsed.id)