Skip to content
This repository has been archived by the owner on Dec 20, 2023. It is now read-only.

Load IPC-actors bundle and spawn IPC gateway actor in genesis #71

Merged
merged 694 commits into from
Feb 16, 2023

Conversation

adlrocha
Copy link
Contributor

@adlrocha adlrocha commented Feb 13, 2023

Depends on (merge when these are merged):

Goal

The goal of this PR is to load a custom bundle of builtin-actors that include the IPC actors in it, and to spawn the gateway actor in genesis.

Implementation

  • A newly generated builtin-actors bundle including the IPC actors have been included in the repo.
  • The IPC gateway is spawned in genesis and assigned an initial balance to handle the minting of new tokens. In the MVP design of IPC, the minting of new tokens was handled by a modified reward actor. In order to avoid an unnecessary change in the reward actor, in this version of the MVP the gateway is responsible for directly handling the minting of new FIL in a subnet whenever new top-down messages are executed (due the removal of balance in the reward actor and its use the gateway actor except for the rootnet).

Usage

At this point, the only thing Lotus does with the IPC actors is loading the bundle and spawning the gateway actor. Theoretically, we should be able to deploy subnet actors and interact with the them, but this hasn't been tested and will be handled in future PRs. In order for Lotus to point to the valid bundle including the IPC actors, the following env variable needs to be exported:

export LOTUS_BUILTIN_ACTORS_V10_BUNDLE="./chain/consensus/ipc-actors.car"

This is the reason why itests fail in genesis, they are not loading the right bundle with the gateway. A future PR is coming next that loads the IPC actors automatically for spacenet without requiring this environmental variable.

iand and others added 30 commits January 24, 2023 11:27
Standarize cli/code functions similar to: filecoin-project/lotus#9317

- cctx.NArg() instead of cctx.Args().xxx
- Add check for args and print help on functions that did not have it
make docsgen-cli
fix: EthAPI: Handle EthCall return correctly
feat: vm: Assert empty object CID when dumping state
Less strict ArgsCheck
itests: add event matrix tests for realtime eth filters and subscriptions
@adlrocha adlrocha mentioned this pull request Feb 13, 2023
7 tasks
@adlrocha adlrocha requested a review from dnkolegov February 13, 2023 16:05
@adlrocha adlrocha marked this pull request as ready for review February 13, 2023 16:24
@adlrocha adlrocha requested a review from hmoniz February 13, 2023 16:37
Base automatically changed from adlrocha/rebase to spacenet February 13, 2023 18:03
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.