(12/19) Fallback to exported RSC for cache misses#93570
Draft
feedthejim wants to merge 1 commit intofeedthejim/export-dynamic-fallback-client-cachefrom
Draft
(12/19) Fallback to exported RSC for cache misses#93570feedthejim wants to merge 1 commit intofeedthejim/export-dynamic-fallback-client-cachefrom
feedthejim wants to merge 1 commit intofeedthejim/export-dynamic-fallback-client-cachefrom
Conversation
This was referenced May 7, 2026
This was referenced May 7, 2026
Contributor
Tests PassedCommit: fb8e4f1 |
3eca55a to
7a9eacd
Compare
0e6580c to
7a471a9
Compare
7a9eacd to
a97b092
Compare
6c6ac1d to
dadbf87
Compare
774720d to
b60b9a7
Compare
dadbf87 to
18c94c5
Compare
b60b9a7 to
0443cfc
Compare
18c94c5 to
317b643
Compare
0443cfc to
a2740f7
Compare
317b643 to
91f7a43
Compare
91f7a43 to
fb8e4f1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stack position
Part 12 of 19 in the output export dynamic fallback stack.
Previous PR: #93562 (11/19)
Next PR: #93571 (13/19)
Context
The stack is split so build-time output can land behind
experimental.outputExportDynamicFallbacksbefore the client router behavior is enabled. The target behavior is foroutput: 'export'apps with parameterized App Router routes to emit fallback HTML/RSC artifacts that a later client can resolve for hard loads and soft navigations.This PR scope: Segment-cache recovery when no route cache entry exists.
A soft navigation can miss the route cache for an unknown param. This PR lets the segment cache fetch the full fallback RSC payload, validate it, and seed reusable cache entries.
What changed
Deliberately not included
Verification
After restacking and autosquashing, I verified the full stack with:
pnpm --filter=next buildpnpm testonly packages/next/src/lib/output-export-dynamic-fallback.test.ts packages/next/src/lib/output-export-fallback-routes.test.ts packages/next/src/export/helpers/output-export-fallback.test.ts packages/next/src/server/request/fallback-params.test.tspnpm testonly packages/next/src/client/output-export-fallback.test.ts packages/next/src/client/components/router-reducer/fetch-server-response.test.ts packages/next/src/client/components/router-reducer/create-initial-router-state.test.ts packages/next/src/client/components/segment-cache/cache.test.ts packages/next/src/client/components/segment-cache/vary-path.test.tspnpm testonly packages/next/src/client/components/router-reducer/compute-changed-path.test.ts packages/next/src/client/flight-data-helpers.test.ts packages/next/src/server/app-render/postponed-state.test.tspnpm test-start-turbo test/e2e/app-dir-export/test/dynamic-fallback-cache-components.test.ts test/e2e/app-dir-export/test/dynamic-fallback-route-shapes-cache-components.test.ts test/e2e/app-dir-export/test/dynamic-fallback-cache-components-basepath.test.ts test/e2e/app-dir-export/test/dynamic-fallback-optimizations-cache-components.test.ts test/e2e/app-dir-export/test/dynamic-fallback-known-params-cache-components.test.ts test/e2e/app-dir-export/test/dynamic-fallback-conflict.test.tspnpm test-start-turbo test/e2e/app-dir/output-export-dynamic-fallbacks/output-export-dynamic-fallbacks.test.ts test/e2e/app-dir-export/test/output-export-server-io.test.ts test/e2e/app-dir-export/test/output-export-server-io-use-cache.test.ts test/e2e/app-dir-export/test/dynamic-fallback-server-params.test.ts