Skip to content

Conversation

@cryptoAtwill
Copy link
Contributor

@cryptoAtwill cryptoAtwill commented Oct 14, 2025

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.

  • Genesis/Interpreter:
    • Add optional user_actors bundle to GenesisBuilder::new and pass to FvmGenesisState::new.
    • Parse user-actor manifest (UserActorManifest) from CAR; map actor names to code/state CIDs.
    • New FvmGenesisState methods: load_user_actor(next_actor_id) and create_actor_with_state_cid to instantiate actors from bundle.
    • Invoke state.load_user_actor(next_id) after deploying IPC contracts in populate_state.
  • CLI/App:
    • Update seal_genesis to construct GenesisBuilder with the new parameter (currently None).
  • Testing:
    • contract-test: include user_actors_bundle.car and pass Some(...) to create_test_genesis_state.
    • snapshot tests: adapt create_test_genesis_state calls with None.
  • API Changes:
    • create_test_genesis_state signature extended to accept user_actors_bundle: Option<&[u8]>.

Written by Cursor Bugbot for commit f85d556. This will update automatically on new commits. Configure here.

@cryptoAtwill cryptoAtwill requested a review from a team as a code owner October 14, 2025 13:11
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant