From 6f6081c840a2624fa4a5af0c4b61a15bca78e8ea Mon Sep 17 00:00:00 2001 From: Alex Date: Sat, 26 Sep 2026 10:34:39 +0200 Subject: [PATCH] fix(rsc): make unknown server references fail with a recognizable error --- packages/plugin-rsc/src/rsc/shared.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/plugin-rsc/src/rsc/shared.ts b/packages/plugin-rsc/src/rsc/shared.ts index 2e1db5db9..ec7c35bd6 100644 --- a/packages/plugin-rsc/src/rsc/shared.ts +++ b/packages/plugin-rsc/src/rsc/shared.ts @@ -11,9 +11,15 @@ setRequireModule({ ) return import(/* @vite-ignore */ id) } else { - const import_ = serverReferences[id] + // own keys only: an id such as `__proto__` must not resolve to an + // inherited member of the registry object + const import_ = Object.hasOwn(serverReferences, id) + ? serverReferences[id] + : undefined if (!import_) { - throw new Error(`server reference not found '${id}'`) + throw Object.assign(new Error(`server reference not found '${id}'`), { + code: 'VITE_RSC_SERVER_REFERENCE_NOT_FOUND', + }) } return import_() }