feat(node): load user actors bundle #1460
Open
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.
This PR load a user actor bundle into the genesis. The bundling is https://github.com/cryptoAtwill/ipc-actor-bundler. In genesis loading, it's pretty straight forward as it just needs to load the code and state cid into the store.
Note
Adds support to load a user-actors CAR at genesis and instantiate actors from provided code/state CIDs, plumbing the bundle through the builder and tests.
user_actorsbundle toGenesisBuilder::newand pass toFvmGenesisState::new.UserActorManifest) from CAR; map actor names to code/state CIDs.FvmGenesisStatemethods:load_user_actor(next_actor_id)andcreate_actor_with_state_cidto instantiate actors from bundle.state.load_user_actor(next_id)after deploying IPC contracts inpopulate_state.seal_genesisto constructGenesisBuilderwith the new parameter (currentlyNone).contract-test: includeuser_actors_bundle.carand passSome(...)tocreate_test_genesis_state.snapshottests: adaptcreate_test_genesis_statecalls withNone.create_test_genesis_statesignature extended to acceptuser_actors_bundle: Option<&[u8]>.Written by Cursor Bugbot for commit f85d556. This will update automatically on new commits. Configure here.