diff --git a/ldap_config.json b/ldap_config.json
index 42f1524685e09ccdcd577138c6eaad4e72ce0ef7..9dbd4d1704f9688ef067f9241a6f3088646eb70e 100644
--- a/ldap_config.json
+++ b/ldap_config.json
@@ -44,7 +44,7 @@
 		"site": "website",
 		"description": "description",
 		"category": "groupCategory",
-		"admins": "memberUid",
+		"admins": "admin",
 		"speakers": "speaker",
 		"members": "member",
 		"followers": "follower",
diff --git a/notes/hist.json b/notes/hist.json
new file mode 100644
index 0000000000000000000000000000000000000000..c4fdab6e6d89c2aadc3237b4d03214839a2503e0
--- /dev/null
+++ b/notes/hist.json
@@ -0,0 +1,7 @@
+{
+    "title": "Historiques",
+    "children": [
+        "hist_ldap",
+        "hist_rights"
+    ]
+}
\ No newline at end of file
diff --git a/notes/hist.md b/notes/hist.md
new file mode 100644
index 0000000000000000000000000000000000000000..84ddc0088c8613dda92fcdb0776e8546cc6f5956
--- /dev/null
+++ b/notes/hist.md
@@ -0,0 +1,4 @@
+Historiques
+===
+
+Le projet sigma a un passif. C'est le travail accumulé de plusieurs promotions qui ont été obligé de faire un certain nombre de choix techniques ou purement esthétiques. Avant de pourrir leur travail conscrit, lis ces quelques lignes. 
\ No newline at end of file
diff --git a/notes/hist_ldap.json b/notes/hist_ldap.json
new file mode 100644
index 0000000000000000000000000000000000000000..cbe5b98108928441e56bb2810c66c0813a4c1a2a
--- /dev/null
+++ b/notes/hist_ldap.json
@@ -0,0 +1,4 @@
+{
+    "title": "Historique de l'API LDAP",
+    "children": []
+}
\ No newline at end of file
diff --git a/notes/hist_ldap.md b/notes/hist_ldap.md
new file mode 100644
index 0000000000000000000000000000000000000000..4226fd2c10a0c3f5a33e6089ae125e3acc9884cc
--- /dev/null
+++ b/notes/hist_ldap.md
@@ -0,0 +1,29 @@
+## Sur le LDAP Frankiz
+
+A l'origine Frankiz, le prédécesseur de sigma, avait sa propre base de données qu'il importait toutes les 3h dans un LDAP énorme et sale, qui contenaiit le strict minimum. Ce LDAP s'est révélé très utile à différents sites binets qui ont fait un usage très libre de cette ressource.
+
+De sorte que quand il fallut remplacer Frankiz, la destruction du LDAP n'était pas possible sans revoir plusieurs sites binets (à voir, le CAS était peut-être une solution suffisante). On a donc choisi de tuer la BDD Frankiz, mais seulement après avoir considérablement enrichi le LDAP pour en faire la BDD utilisateurs et groupes principale de sigma.
+
+Une documentation vieillissante est disponible sur le [`wikix`](https://wikibr.binets.fr/Admin:LDAP) par rapport au LDAP de Frankiz.
+
+Le BR2017 a mené un gros travail de réorganisation du LDAP donc beaucoup d'informations sur le wikix ne seront plus valides.
+
+### Idée de nouvelle organisation du LDAP
+
+Le LDAP a été significativement enrichi depuis Frankiz, puisqu'il contient la majeure partie des données utilisateurs et groupes de sigma. Les champs parent et child permettent aux resolvers afférents de faire descendre les admins et remonter les membres, mais n'a pas d'influence à l'intérieur de l'API LDAP.
+
+![newLDAPgr](../assets/LDAPGroup.png "Structure pour les groupes sur le LDAP")
+
+![newLDAPus](../assets/LDAPUser.png "Structure pour les users sur le LDAP")
+
+L'équivalence pratique entre champs du LDAP et champs du code est dans le fichier de configuration [`ldap_config`](../ldap_config.json).
+
+### Etat de l'API
+
+Cette API est voulue comme la plus simple et la plus minimaliste possible ; en effet, elle sera à réimplémenter sur toutes les instances différentes de sigma pour s'adapter aux structures de données des différentes écoles. On peut administrer des  groupes depuis sigma, mais pour s'interfacer d'instances à instances seules deux fonctions sont indispensables ; peek et search.
+
+Cette API est naïve et ne gère pas de problème de récursion.
+
+![LDAPAPI](../assets/LDAP_API_.png "Etat courant de l'API LDAP")
+
+Le détail de chaque fonction est disponible dans la documentation JSDOC : ([`User`](../doc/LDAP.User.html) et [`Group`](../doc/LDAP.Group.html)).
\ No newline at end of file
diff --git a/notes/hist_rights.json b/notes/hist_rights.json
new file mode 100644
index 0000000000000000000000000000000000000000..0dd11135e2bb0f6720478e71058fbd07da9996b9
--- /dev/null
+++ b/notes/hist_rights.json
@@ -0,0 +1,4 @@
+{
+    "title": "Bilan des droits sur sigma",
+    "children": []
+}
\ No newline at end of file
diff --git a/notes/memo_sigma_rights.md b/notes/hist_rights.md
similarity index 100%
rename from notes/memo_sigma_rights.md
rename to notes/hist_rights.md
diff --git a/notes/memo_ldap.md b/notes/memo_ldap.md
index 38b4f9acad3956e8a119e76f843265897bebbd2c..98d6b140e67dc674f8271e52a192674ba5bc4065 100644
--- a/notes/memo_ldap.md
+++ b/notes/memo_ldap.md
@@ -2,29 +2,16 @@
 
 LDAP signifie Lightweight Directory Access Protocol ; c'est donc un protocole, comme http, et pas une structure de données à proprement parler. Comme http, il fonctionne par chaîne de caractères appelés URI. La structure d'un LDAP est cependant forcément celle d'un arbre, avec une racine à la fin de l'URI et le noeud recherché à la fin. Par exemple "uid=louis.vaneau,ou=eleves,dc=frankiz,dc=net", qui permet d'accéder à la feuille associée à Louis Vaneau dans le LDAP de frankiz.
 
-Il s'agit d'une structure particulièrement rigide mais efficace en lecture. Chaque noeud contient un certain nombre de champs qui ne sont pas nécessairement tous rempli, et qui n'ont pas forcément une seule variable par champ.
+Il s'agit d'une structure particulièrement rigide mais efficace en lecture. Chaque noeud contient un certain nombre de champs qui ne sont pas nécessairement tous remplis, et qui n'ont pas forcément une seule variable par champ. Un LDAP est une structure parfaitement adapté à la réalisation d'un annuaire car pensé pour cela dès l'origine ; très efficace en lecture, il brille moins en écriture.
 
-## Un wrapper sympathique
-
-On accède sur un LDAP¨par des requêtes LDAP, d'où l'intérêt d'une bibliothèque comme [`ldap.js`](http://ldapjs.org/) qui fait office de traducteur javascript/LDAP, un peu comme knex et SQL. On s'intéressera particulièrement à la partie [`client`](http://ldapjs.org/client.html) qui est celle qui permet d'agir sur le LDAP.
-
-## Une interface graphique agréable
-
-Pour explorer un LDAP, vous pouvez utiliser 
-[`JXplorer`](http://jxplorer.org/).
+La technologie est ancienne et bien connue. Le LDAP de Frankiz, OpenLDAP, contient beaucoup de fonctionnalités sympathique comme le hashage inclus des mots de passe avec salt conformément à l'état de l'art.
 
-## Sur le LDAP Frankiz
-
-Une documentation vieillissante est disponible sur le [`wikix`](https://wikibr.binets.fr/Admin:LDAP).
-
-### Idée de nouvelle organisation du LDAP
-
-Les admins descendent et les membres remontent.
+## Un wrapper sympathique
 
-![newLDAPgr](../assets/LDAPGroup.png "Structure pour les groupes sur le LDAP")
+On accède sur un LDAP par des requêtes LDAP, d'où l'intérêt d'une bibliothèque comme [`ldap.js`](http://ldapjs.org/) qui fait office de traducteur javascript/LDAP, un peu comme knex et SQL. On s'intéressera particulièrement à la partie [`client`](http://ldapjs.org/client.html) qui est celle qui permet d'agir sur le LDAP.
 
-![newLDAPus](../assets/LDAPUser.png "Structure pour les users sur le LDAP")
+Cette bibliothèque est reprise et re-wrappée dans la classe [`Basics`](../src/ldap/internal/basics.ts).
 
-### Etat de l'API
+## Une interface graphique agréable
 
-![LDAPAPI](../assets/LDAP_API_.png "Etat courant de l'API LDAP")
\ No newline at end of file
+Pour explorer un LDAP, vous pouvez utiliser [`JXplorer`](http://jxplorer.org/). Il s'agit d'un logiciel OpenSource en Java très iparfait mais qui permet de rapidement parcourir les champs d'un LDAP et de mener des petites recherches dessus.
\ No newline at end of file
diff --git a/notes/memo_sigma_graphql.json b/notes/memo_sigma_graphql.json
new file mode 100644
index 0000000000000000000000000000000000000000..5b943b170fc6121e140cd16247ab654a6f4bcd7c
--- /dev/null
+++ b/notes/memo_sigma_graphql.json
@@ -0,0 +1,4 @@
+{
+    "title": "Memo GraphQL",
+    "children": []
+}
\ No newline at end of file
diff --git a/notes/memos.json b/notes/memos.json
index f3f6c53dc26df0dba9ce0e4aba2fafd2a5403eb2..be3440d13677639a451516f67b7ff8eca337de67 100644
--- a/notes/memos.json
+++ b/notes/memos.json
@@ -3,6 +3,7 @@
     "children": [
         "memo_knexjs",
         "memo_postgresql",
+        "memo_sigma_graphql",
         "memo_jsdoc",
         "memo_ldap"
     ]
diff --git a/notes/memos.md b/notes/memos.md
index 1f51b82463da51955169047ac4880058f5f2f2c7..8aab15325d1aeb03e41543b18dab7ee04a6ea0a3 100644
--- a/notes/memos.md
+++ b/notes/memos.md
@@ -1,4 +1,4 @@
 Mémos
 ===
 
-Le projet sigma était assez large et comportant pas mal de facettes avec des technologies pas forcément toujours intuitives ou bien documentées, les mémos de cetten section sont là pour permettre au dev perdu de s'y retrouver rapidement face à une technologie qu'il ne maîtrise pas à fond.
\ No newline at end of file
+Le projet sigma était assez large et comportant pas mal de facettes avec des technologies pas forcément toujours intuitives ou bien documentées, les mémos de cette section sont là pour permettre au dev perdu de s'y retrouver rapidement face à une technologie qu'il ne maîtrise pas à fond.
\ No newline at end of file
diff --git a/src/ldap/internal/tools.ts b/src/ldap/internal/tools.ts
index a2b0f40a1853178fc1d4f52b9e229f66ccb84acb..6f57fa240827fd5e0c5e7ab797cecd1c377253c7 100644
--- a/src/ldap/internal/tools.ts
+++ b/src/ldap/internal/tools.ts
@@ -25,7 +25,7 @@ export class Tools {
     /**
      * @memberof LDAP
      * @summary Fonction qui renvoit toutes les infos relatives à un groupe ou un utilisateur particulier.
-     * @desc Cette fonction utilise {@link LDAP.search} avec des attributs prédéfinis.
+     * @desc Cette fonction utilise {@link LDAP.search} avec des attributs prédéfinis. Elle est naïve et n'opère pas de récursion.
      * @param T - Format renvoyé (en pratique {@link userData} ou {@link groupData})
      * @arg {string} domain - Domaine de la recherche (utilisateur ou groupe)
      * @arg {string} id - Identifiant de la feuille cherchée (uid ou gid)
@@ -327,7 +327,7 @@ export class Tools {
      * @memberof LDAP
      * @summary Fonction qui retrouve les utilisateurs ou groupes respectivement correspondant à un groupe ou un utilisateur de la même catégorie.
      * @desc Cette fonction utilise {@link LDAP.search} et va directement à la feuille de l'utilisateur ou du groupe interrogé.
-     * Pour autant, elle est moins naïve qu'elle en a l'air. Elle gère la descente des admins et la remontée des membres.
+     * Pour autant, elle est moins naïve qu'elle en a l'air. Elle ne gère ni la descente des admins ni la remontée des membres et renvoit une réponse naïve.
      * @param {string} id - Identifiant du groupe ou de l'individu à interroger (supposé valide)
      * @param {"user"|"group"} domain - Arbre à interroger 
      * @param {"admins"|"speakers"|"members"|"followers"} category - Catégorie considérée