Repository navigation
feat(mf): emit RSC metadata in federation manifests - #13203
Draft
ScriptedAlchemy wants to merge 110 commits into
Draft
ScriptedAlchemy wants to merge 110 commits into
ScriptedAlchemy wants to merge 110 commits into
Conversation
test: retry native watcher watch steps Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Zack Jackson <ScriptedAlchemy@users.noreply.github.com>
|
Cursor Agent can help with this pull request. Just |
Contributor
Rsdoctor Bundle Diff AnalysisFound 5 projects in monorepo, 0 projects with changes. 📊 Quick Summary
Generated by Rsdoctor GitHub Action |
Contributor
📦 Binary Size-limit
❌ Size increased by 115.00KB from 49.01MB to 49.12MB (⬆️0.23%) |
Contributor
Merging this PR will not alter performance
Comparing Footnotes
|
Deploying rspack with
|
| Latest commit: |
5556717
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://8f2213eb.rspack-v2.pages.dev |
| Branch Preview URL: | https://cursor-manifest-rsc-client-d.rspack-v2.pages.dev |
2 tasks done
This was referenced Mar 5, 2026
ScriptedAlchemy
force-pushed
the
cursor/manifest-rsc-client-data-d493
branch
from
March 6, 2026 02:11
2266fc4 to
d5a3b9a
Compare
Capture expose layer information in emitted MF stats and manifest output, and add a manifest-layers regression case to verify layered shared and expose metadata stays correct. Made-with: Cursor
Hydrate consume handler mappings from consumes loading data so bundler-runtime keeps layer-aware share metadata in the enhanced path. Also validate multi-entry share scopes unless enhanced mode is enabled, and emit remote external metadata alongside remote runtime records.
Keep provide shared runtime entries in their original shareScope shape and mark enhanced initializeSharingData as already updated so bundler-runtime does not rebuild downgraded shared registrations from the legacy structure.
Emit consume-shared source data for shared consumers and let the runtime module reuse it when serializing consume metadata. This keeps module-output consume entries callable so layered federation consumers can initialize sharing before resolving shared react. Made-with: Cursor
Made-with: Cursor
Wait for consume share scopes to finish initializing before delegating to the bundler runtime so layered shared modules resolve consistently. Remove the temporary federation debug instrumentation that was added while tracing the runtime flow. Made-with: Cursor
Drop the temporary discovery document now that the parity investigation is captured elsewhere. Made-with: Cursor
Reinstate legacy share-scope validation and restore the enhanced runtime metadata paths needed for layered consume and module remote resolution. Made-with: Cursor
Preserve layer-aware shared metadata across manifest generation, used-exports optimization, and module remote runtime wiring so layered federation outputs stay correct and covered. Made-with: Cursor
Keep layered consume scope initialization in the enhanced runtime while preserving legacy consume version-check behavior and rust lint parity. Made-with: Cursor
…fest-rsc-client-data-d493 # Conflicts: # crates/rspack_plugin_mf/src/manifest/mod.rs # crates/rspack_plugin_mf/src/manifest/utils.rs
ScriptedAlchemy
force-pushed
the
feat/mf-layers
branch
4 times, most recently
from
July 23, 2026 01:16
3a443d9 to
7d654f7
Compare
2 tasks done
This branch has not been deployed
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.
Summary
rscmetadata forshared,exposes, andremotesinmf-stats.jsonandmf-manifest.jsonname = pkgName,shareKey = federated identity) and preserve aliased remote lookup paths for manifest consumersStack
Dependency order, bottom to top (the layers foundation has been split into four PRs):
feat(mf): add layer-aware shared module corefeat(mf): initialize ordered share scopes at runtimefeat(mf): support layered container exposesfeat(mf): emit layered federation manifest metadatafeat(mf): emit RSC metadata in federation manifests<- this PRfeat(rsbuild): add RSC federation host/remote examplefeat(rsbuild): add RSC federation module patternsfeat(rsc): register federation manifest data at runtimeThe RSC branches still carry the earlier, unsplit layers implementation. #13203 currently targets
feat/mf-layers(#12977); integrating the refreshed foundation through #14913 and propagating it through #13204 → #13208 → #13215 remains outstanding. The list above describes the dependency order, not completed branch integration.Layered Federation metadata also has a companion change in module-federation/core#5039. It updates the Federation wrapper and manifest reader; it does not implement RSC runtime registration.
Why This PR Exists
This PR defines the manifest producer contract that later runtime code consumes. Shared-entry identity, aliased remote lookups, and manifest-level RSC metadata belong here because they change what the manifest emits.
References
tests/rspack-test/configCases/container-1-5/manifest-rsc-references