wiki:DelegationTree

Delegation Tree

One very fundamental structure within Adhocracy is the delegation tree. It is used to determine the scope of voting delegations within the system. Most elements within the platform, such as Proposals, Issues and Pages are a part of this tree by inheriting from the Delegateable class. Each Delegateable node can have many parents and many children. A Delegation within the scope of a Delegateable will thus apply to any voting decisions regarding the Delegateable and any of its children, recursively.

Since the Delegation tree is very flexible, there is no method of making sure that only one Delegation applies to a specific scope. In cases where multiple Delegations match, less specific Delegations are discarded (i.e. those that apply to a parent of the scope, rather than the scope itself). If multiple Delegations match after such disambiguation, reconciliation is attempted at a later stage, during vote tallying. Currently, this means that if all delegates voted in the same way, the vote is counted; else it will be discarded and the user will be informed.