Propagation

When an ItemClass inherits from another ItemClass, it can be unknown or undefined how any changes to the parent ItemClass should be propagated to the child ItemClass.

Raindrops introduces the concept of permission-less updates(--inheritance-update) to handle this situation.

items-cli update_item_class \
         -k <keypair> \
         --env devnet \
         -cp example-configs/itemClass.json \
         --inheritance-update

This tells the endpoint not to accept any changes to a child ItemClass except for those also present on the parent ItemClass. This means anybody can enforce inheritance at any time across any size tree of inheritance.

Similar logic exists for the Player contract, but instead of using --inheritance-update flag, simply use a null updatePermissivenessToUse inside the config JSON file (the -cp flag entry).

Last updated