{"record":{"id":"63b5a4892f0fa029","repo":"facebook/react","slug":"343","errorCode":"343","errorMessage":"ReactDOMServer does not yet support scope components.","messagePattern":"ReactDOMServer does not yet support scope components\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/react-server/src/ReactFizzServer.js","lineNumber":3124,"sourceCode":"    }\n    // $FlowFixMe[invalid-compare]\n    case REACT_VIEW_TRANSITION_TYPE: {\n      if (enableViewTransition) {\n        renderViewTransition(request, task, keyPath, props);\n        return;\n      }\n      // Fallthrough\n    }\n    // $FlowFixMe[invalid-compare]\n    case REACT_SCOPE_TYPE: {\n      if (enableScopeAPI) {\n        const prevKeyPath = task.keyPath;\n        task.keyPath = keyPath;\n        renderNodeDestructive(request, task, props.children, -1);\n        task.keyPath = prevKeyPath;\n        return;\n      }\n      throw new Error('ReactDOMServer does not yet support scope components.');\n    }\n    // $FlowFixMe[invalid-compare]\n    case REACT_SUSPENSE_TYPE: {\n      renderSuspenseBoundary(request, task, keyPath, props);\n      return;\n    }\n  }\n\n  // $FlowFixMe[invalid-compare]\n  if (typeof type === 'object' && type !== null) {\n    switch (type.$$typeof) {\n      // $FlowFixMe[invalid-compare]\n      case REACT_FORWARD_REF_TYPE: {\n        renderForwardRef(request, task, keyPath, type, props, ref);\n        return;\n      }\n      // $FlowFixMe[invalid-compare]\n      case REACT_MEMO_TYPE: {","sourceCodeStart":3106,"sourceCodeEnd":3142,"githubUrl":"https://github.com/facebook/react/blob/eafeac097ba51e1eab809c07102126bd5f8e5425/packages/react-server/src/ReactFizzServer.js#L3106-L3142","documentation":"Scope components (the experimental React Scope API, REACT_SCOPE_TYPE) pass through in Fizz only when the enableScopeAPI flag is on; the flag just renders their children. On a build without the flag, rendering a scope element during SSR throws error code 343.","triggerScenarios":"Rendering an experimental scope element (unstable_Scope) or a tree containing one during SSR on a stable-channel build or a custom build where enableScopeAPI is false.","commonSituations":"Trying experimental React DOM features on the stable channel; a dependency importing scope internals; bundling canary-only code against a stable react-dom.","solutions":["Remove the scope component from trees that are server rendered","Use a React build/channel where the scope flag is enabled (experimental channel)","Identify and update or replace the dependency that emits the scope element type"],"exampleFix":"// before\n// <unstable_Scope>{children}</unstable_Scope> rendered during SSR on a stable build\n\n// after\nreturn <>{children}</>; // drop the scope wrapper for SSR","handlingStrategy":"fallback","validationCode":"const isScopeElement = (type) =>\n  typeof type === 'object' && type !== null && type.$$typeof === Symbol.for('react.scope');\n// skip or replace scope elements before passing trees to a static SSR renderer","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Do not ship experimental element types to stable-channel renderers","Match the React channel (stable vs experimental) across app and dependencies","Check the $$typeof of third-party components when integrating experimental APIs"],"tags":["scope","experimental-api","feature-flags","ssr"],"backgroundTag":"unsupported-component-type-ssr","analyzedSha":"eafeac097ba51e1eab809c07102126bd5f8e5425","analyzedAt":"2026-08-21T22:01:08.818Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}