diff --git a/packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js b/packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js
index 371a1dd229430..a54a623bb3954 100644
--- a/packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js
+++ b/packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js
@@ -5089,15 +5089,10 @@ export function writePreambleStart(
destination: Destination,
resumableState: ResumableState,
renderState: RenderState,
- willFlushAllSegments: boolean,
skipExpect?: boolean, // Used as an override by ReactFizzConfigMarkup
): void {
// This function must be called exactly once on every request
- if (
- enableFizzExternalRuntime &&
- !willFlushAllSegments &&
- renderState.externalRuntimeScript
- ) {
+ if (enableFizzExternalRuntime && renderState.externalRuntimeScript) {
// If the root segment is incomplete due to suspended tasks
// (e.g. willFlushAllSegments = false) and we are using data
// streaming format, ensure the external runtime is sent.
diff --git a/packages/react-dom/src/__tests__/ReactDOMFizzServer-test.js b/packages/react-dom/src/__tests__/ReactDOMFizzServer-test.js
index 7f4300f687606..1be040bfe36c9 100644
--- a/packages/react-dom/src/__tests__/ReactDOMFizzServer-test.js
+++ b/packages/react-dom/src/__tests__/ReactDOMFizzServer-test.js
@@ -3587,6 +3587,9 @@ describe('ReactDOMFizzServer', () => {
'' +
+ (gate(flags => flags.shouldUseFizzExternalRuntime)
+ ? ''
+ : '') +
'',
);
});
@@ -4501,7 +4504,8 @@ describe('ReactDOMFizzServer', () => {
expect(document.getElementsByTagName('script').length).toEqual(1);
});
- it('does not send the external runtime for static pages', async () => {
+ // @gate shouldUseFizzExternalRuntime
+ it('does (unfortunately) send the external runtime for static pages', async () => {
await act(() => {
const {pipe} = renderToPipeableStream(
@@ -4515,11 +4519,11 @@ describe('ReactDOMFizzServer', () => {
});
// no scripts should be sent
- expect(document.getElementsByTagName('script').length).toEqual(0);
+ expect(document.getElementsByTagName('script').length).toEqual(1);
// the html should be as-is
expect(document.documentElement.innerHTML).toEqual(
- '