# Chantier 1 — Acte d'engagement Certification > Binôme : **Yvv** (porteur) · **Chiara** (testeuse et codeuse — ses tests d'usage valent > contrôles). Branche commune : `chantier/acte-certification`. Ouvert le 2026-10-21. > Production : https://decision.librodrome.org ## Le besoin, en une phrase La communauté Monnaie libre tient son Acte d'engagement Certification comme un **texte vivant** : lisible d'abord, modifiable par article, chaque modification passant par un vote dont le seuil suit la formule inertielle de la Ğ1 — sans qu'une coquille demande un vote, sans que deux articles contradictoires soient en vigueur ensemble, et avec une publication automatique que les applications clientes (Cesium, Ğecko…) peuvent suivre. ## Ce que voit la personne 1. **Accueil sobre** : « Rendre possible la décision collective » / « en fonction du contexte, processus et modalités, boîte à outils », les quatre outils en une ligne chacun, puis la connexion. Le menu complet à gauche : Décisions · Docs de référence · Mandats · Protocoles (seul Docs de référence est actif). 2. **Connexion Ğ1** — la même que le forum Monnaie libre (connect.monnaie-libre.fr). En attendant l'inscription du client OAuth2, des **liens d'invitation** à usage unique. 3. **Groupes** : avec une clé Ğ1, on voit Monnaie libre, Axiom, Librodrome et le Groupe local Vallée Drôme Crestois — pas l'Atelier du canal. Un groupe et son contenu ne s'ouvrent qu'à ses membres ; Monnaie libre s'ouvre à tout membre de la toile de confiance, les autres groupes sur accord dans trustinWallet. 4. **Le texte en vigueur**, seul, en grand, typographie de lecture (Literata) : au départ le Préambule et les deux engagements fondamentaux (Unicité du compte, Réciprocité), marqués *seed a minima · 0 vote*. Au survol (ou toujours visibles sur mobile), trois gestes discrets : **Le vote** (en cours, inertie, formule, annexes) · **Les propositions** · **Proposer**. Ils ouvrent un panneau latéral (une feuille sur mobile) dont l'état vit dans l'URL. 5. **En dessous**, les propositions en cours — les 30 autres articles du texte source, à zéro vote, inertie standard — rangées par section (introduction, fondamental, technique, conclusion, annexes, formule, inertie, ordonnancement), les variantes signalées. 6. **Deux aperçus** : « si les bien cotées passent » et « si tout passe ». 7. **Trois langues** : fr · en · es, pour l'interface comme pour le texte. Le français fait foi ; une traduction devenue ancienne (le français a changé depuis) est signalée. ## Les règles ### Le seuil — formule inertielle Ğ1 ``` R = C + B^W + (M + (1 − M)·(1 − (T/W)^G)) · max(0, T − C) ``` W = électorat (Monnaie libre : taille de la toile, lue sur la chaîne toutes les 6 h ; un groupe géré : ses membres), T = votes exprimés, M = majorité, G = gradient, B = 0,1, **C = plancher de votants « pour »** (Monnaie libre : **50** ; groupe d'essai : 1). Adoptée si « pour » ≥ ⌈R⌉. | Inertie | M | G | |---|---|---| | basse | 50 % | 0,1 | | standard (au départ, partout) | 50 % | 0,2 | | haute | 60 % | 0,4 | | maximale | 66 % | 0,6 | Moteur : `crates/ld-engine/src/threshold.rs` (testé : 7224 / 120 votants → 94 voix requises). ### Le vote permanent - Toute version d'un article (proposition ou texte en vigueur) se vote à tout moment. - Une proposition **remonte en vigueur** dès qu'elle atteint son seuil **et** tient une marge (pour − requis) plus large que la version en place. La version déplacée redevient une proposition, avec ses votes. Un *seed a minima* a pour marge −C : la première proposition qui atteint son seuil le remplace. - Retirer un article est une proposition comme une autre (« retirer cet article »). - Le balayage tourne à chaque vote et toutes les 5 minutes (la taille de la toile bouge). ### L'inertie se vote aussi Chaque article porte son inertie. La changer est une proposition, **votée elle-même à l'inertie du cran au-dessus** (« inertie + ») : alourdir ou alléger demande plus que modifier. ### Corriger n'est pas voter | Geste | Qui | Effet sur les votes | |---|---|---| | Corriger une **coquille** (accents, casse, ponctuation, espaces ; ou jusqu'à 2 mots à 2 lettres près) | tout membre sur un texte de départ ou en vigueur ; l'auteur sur sa proposition | aucun — les votes restent, les traductions restent à jour | | Modifier **le fond** d'une proposition | son auteur | nouvelle révision : les votes antérieurs sont « à reconfirmer », les signalements tombent | | Modifier le fond d'un texte **en vigueur** ou d'un texte de départ | personne | refusé : on propose une nouvelle version | Le classement est prudent : un nombre changé (même par une virgule ou une espace : « 50 » → « 5,0 ») ou un mot de négation touché (ne, pas, jamais, personne…) rend la modification « de fond ». Moteur : `crates/ld-engine/src/edit.rs`. ### Deux articles qui se contredisent Tout membre peut **signaler une contradiction** entre deux propositions, motif à l'appui. Tant que le signalement tient, celle des deux qui n'est pas en vigueur **ne peut pas entrer en vigueur**. Il se lève par son auteur (ou un administrateur), ou tombe quand la proposition signalée est révisée sur le fond. ### Une décision par proposition L'éditeur a un **assistant à règles** (pas d'IA pour l'instant ; plus tard, une IA locale, sans abonnement) : il repère un texte qui porte plusieurs décisions et propose de le **découper en brouillons**, signale une proposition très proche d'une existante, et un texte long. Moteur : `crates/ld-engine/src/assist.rs`. ### Brouillon → proposition On écrit en brouillon (libre, invisible des autres), on soumet ; la proposition est alors ouverte au vote. Son auteur peut la retirer. ### Publication Chaque entrée en vigueur (et la publication initiale) passe par une file d'envoi : le serveur écrit `fr.md`, `en.md`, `es.md` (front matter : document, langue, source, mise à jour ; les traductions marquées éditoriales) et `document.json`, commit et pousse sur `git.duniter.org/Yvv/libredecision-textes`, chemin `monnaie-libre/acte-engagement-certification/`. Échec → nouvel essai avec délai croissant. La clé de publication est générée par le serveur ; sa partie publique s'affiche dans trustinWallet, à ajouter comme clé de déploiement (écriture) du dépôt. Le groupe d'essai ne publie jamais. ### Accès — trustinWallet Tout le monde connecté peut tout faire dans les groupes qu'il ouvre (lire, proposer, voter, corriger, signaler) **sauf la gestion des accès**, réservée aux administrateurs de trustinWallet (`/acces`) : membres des groupes, invitations, administrateurs, retours, clé de publication. Le nom trustinWallet remplace trustWallet (déjà pris). Règles : `crates/trustin-access`. **Une personne, une voix.** Dans Monnaie libre, dont l'électorat W est la toile de confiance, **seuls les membres de la toile votent** (connexion Ğ1). Une identité d'invitation y lit, propose, corrige et signale, mais ne vote pas : sinon la même personne, invitée puis connectée avec sa clé, voterait deux fois. Dans les groupes gérés (essai, Axiom…), tout membre vote. ## Le groupe d'essai Caché, plancher C = 1, sans publication : on y éprouve tout (adoption, coquilles, découpage) sans toucher au texte de la communauté. Chiara et Yvv en sont membres. ## Décisions prises (2026-10-21, avec Yvv) | Question | Décision | |---|---| | Stack | Rust (serveur, moteur) + Svelte (interface), pour la durée, la performance, la modularité | | Domaine | le produit à la racine `decision.librodrome.org` ; la maquette sur `maquette.decision.librodrome.org` | | Connexion | client OAuth2 de connect.monnaie-libre.fr (demande à poka) ; liens d'invitation en attendant | | Dépôt des textes | `git.duniter.org/Yvv/libredecision-textes` (compte d'Yvv) | | Garde-fou du vote permanent | nombre minimal de votants « pour » (C) | | Langues | fr, en, es ; le français est voté, les traductions sont éditoriales | | Chiara | testeuse et codeuse | | Assistant | à règles d'abord ; IA locale plus tard, sans dépendance d'abonnement | Les raisons longues sont dans `docs/adr/`. ## Questions ouvertes (à Yvv) - **Licence** du code — non choisie. - **Texte « Paramètres par défaut » du seed** (F1.2) : il annonce C = 0 et une durée de 30 jours, alors que le vote est permanent avec C = 50. À reformuler par proposition (c'est leur rôle), ou à corriger dans le seed avant la première publication si c'est une erreur de transcription. - Anglais : l'interface est en anglais américain, le seed en anglais britannique. ## Ce qui reste après la livraison - L'inscription du client OAuth2 (poka) : `DEMANDE-CONNECT.md`, puis les deux secrets dans la CI. - Les retours de Chiara → contrôles → corrections, sur la branche du chantier. - Ensuite : chantier 2, l'Acte d'engagement forgeron (qualification d'une compétence).