michaellaunay / alirpunkto

0 stars 0 forks source link

Create the field "Cooperative Behaviour Mark" in the LDAP database #51

Closed SergioArbarviro closed 2 months ago

SergioArbarviro commented 8 months ago

One of the important features of KuneAgi is that all Cooperators bear a mark regarding their cooperative behaviour. This mark is attributed to them by all other members of a Working Group, when they leave this Working Group, for whatever reason (they quit, they are expelled, the Working Group is dissolved for lack of activity or because it has adopted and published its Action Proposal).

In the future, we envisage to have one instance of KuneAgi per category of Action Proposal (as per our statutes), which implies to run several instances in parallel. However, we want to have this Cooperative Behaviour Mark being consolidated across all instances, because a given user must be held accountable of his/her deeds across the whole platform.

Therefore, I propose that two fields be created in the LDAP database:

In addition, AlirPunkto should store the following variable, which applies to all Cooperators, and which is provided and further edited by the administrator of AlirPunkto:

When an instance of KuneAgi receives a new input to the Cooperative Behaviour Mark (= a member of a Working Group expressed his/her appreciation of the cooperative behaviour of the Cooperator):

  1. the KuneAgi instance reads from the LDAP database the 'Cooperative Behaviour Mark', the 'Last update' and the 'Time constant';
  2. the KuneAgi instance deflates the 'Cooperative Behaviour Mark' over the period between the last update and the present, by mutiplying the this mark by 1/2^[(Present - Last Update)/TimeConstant];
  3. the KuneAgi instance adds to this deflated 'Cooperative Behaviour Mark' the new input received;
  4. the KuneAgi instance writes on the LDAP database: