Description
Scale-Free Kudos https://research.anoma.net/t/scale-free-kudos-brainstorming-thread/217
This module contains the ARMv1 version of the resource logic for kudo, adapted from https://github.com/anoma/kudos-snippets/blob/main/resource_logic.md
Axioms are used for parts that are unclear.
This the purpose of the resource logic, as far as I (paul@heliax.dev) understand.
# Creation of Kudo denomination
Someone, __the originator__ can create a new Kudo denomination. They do this by:
1. generating a public/private key pair.
2. Create a Resource in a Transaction that creates a quantity of this new denomination.
Qs.
1. How can you populate the ownerSig field? It is generated from the Resource, but is also part of the Resource.
2. How does a user (say the owner) obtain the kudoLogic in order to participate in the Application?
3. What is the connectives check?
Definitions
kudoLogic (self : Resource) (tx : Transaction) : BoolSource#
Check that the Transaction is valid for the Kudo application. The self argument is the Resource that defines this logic function.
checkConsumedKudo (rs : List Resource) : BoolSource#
Run checks on consumed Kudo Resources
checkCreatedKudo (rs : List Resource) : BoolSource#
Run checks on created Kudo Resources
checkValidOriginator (r : Resource) : BoolSource#
Check that the originator signed the Resource kind.
checkAuthorizedConsumption (r : Resource) : BoolSource#
Check that the owner of the Kudo has authorized consumption.
The extra data stored on a Kudo transaction