[Master of Ceremony only]

Warning The environment variable IOTA_PROTOCOL_CONFIG_CHAIN_OVERRIDE=mainnet is required for mainnet configuration. Ensure this is set before running any commands.

10. Build the Unsigned Checkpoint

Once all validators have been added and the delegations initiated, then the Master of Ceremony can build the Unsigned Checkpoint:

iota genesis-ceremony build-unsigned-checkpoint --local-migration-snapshots stardust_object_snapshot.bin
git add .
git commit -m "commit Unsigned Checkpoint"
git push

Command flags:

This command creates:

  • unsigned-genesis: a file containing:
    • the genesis Checkpoint summary info
    • the genesis Checkpoint contents (referencing the main genesis transaction and all the transactions in contained in migration.blob by their digest),
    • the main genesis transaction, instantiating the system and framework packages and objects,
    • the effects of such transaction,
    • the events of such transaction,
    • the additional objects (not coming from migration) for the genesis, normally this is empty;
  • migration-sources: a file containing the path of the Stardust Object Snapshot.
  • migration.blob: a file containing the list of transactions that are used to push migrated objects at genesis time into the node DB once started, plus the list of such objects in a BCS-encoded form; these transactions are part of the genesis Checkpoint.
  • token-distribution-schedule: a file used internally to indicate the values of assets to "minted" during the genesis execution; these are assets that are destroyed from the migrated objects and re-created in the form of Coin<IOTA>, TimelockedStakedIota or StakedIota in favor of validators; these assets are owned by the delegators indicated in the Delegator Map.