Decree is a special datum type used to inform the blockchain network about particular system changes.
Decrees are needed for setting some of the network parameters such as size of common-network commission (and wallet for this commission), minimal signatures quantity for transaction acceptance, list of network owners (ones who can work with zerochain directly), etc.
Decree types
DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_FEE
specifies network commission and corresponding wallet address (Anchor is needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_OWNERS
specifies list of network owners (Anchor is not needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_OWNERS_MIN
gets minimal signatures quantity for decree acceptance (Anchor is not needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_STAKE_APPROVE
confirms stake validity (Anchor is needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_STAKE_INVALIDATE
invalidates stake (Anchor is needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_STAKE_MIN_VALUE
sets minimal stake value to become validator (Anchor is needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_STAKE_MIN_VALIDATORS_COUNT
sets minimal validators quantity for Block acceptance (Anchor is needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_BAN
bans the node (Anchor is not needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_UNBAN
unbans the node (Anchor is not needed)DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_REWARD
sets base reward value (Anchor is needed)
Decree is an infrastructure datum, it is created in zerochain. If decree changes some parameters in mainchain then there will be created Anchor for it in the mainchain.