Files
decision/docs/content/user/8.faq.md
Yvv 403b94fa2c Sprint 5 : integration et production -- securite, performance, API publique, documentation
Backend: rate limiter, security headers, blockchain cache service avec RPC,
public API (7 endpoints read-only), WebSocket auth + heartbeat, DB connection
pooling, structured logging, health check DB. Frontend: API retry/timeout,
WebSocket auth + heartbeat + typed events, notifications toast, mobile hamburger
+ drawer, error boundary, offline banner, loading skeletons, dashboard enrichi.
Documentation: guides utilisateur complets (demarrage, vote, sanctuaire, FAQ 30+),
guide deploiement, politique securite. 123 tests, 155 fichiers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 15:12:50 +01:00

259 lines
14 KiB
Markdown

---
title: FAQ
description: Questions frequentes sur Glibredecision
---
# Questions frequentes
## Acces et authentification
### Ai-je besoin d'un compte Duniter pour utiliser Glibredecision ?
Pour **consulter** les documents, decisions et resultats de vote, aucune authentification n'est necessaire. Pour **voter**, **proposer des modifications** ou **creer des decisions**, vous devez posseder une identite Duniter V2 avec une adresse SS58.
### Comment fonctionne la connexion sans mot de passe ?
Glibredecision utilise un systeme challenge-response base sur la cryptographie Ed25519. Voici le processus :
1. Vous fournissez votre adresse Duniter SS58.
2. Le serveur genere un texte aleatoire (le "challenge") de 64 caracteres hexadecimaux.
3. Votre extension Polkadot.js ou votre portefeuille Cesium signe ce challenge avec votre cle privee Ed25519.
4. Le serveur verifie la signature avec votre cle publique.
5. Si la verification reussit, un jeton de session vous est attribue.
Votre cle privee n'est **jamais** transmise au serveur. Seule la signature du challenge est envoyee.
### Quels portefeuilles sont compatibles ?
Tout portefeuille supportant la signature Ed25519 sur Substrate est compatible :
- **Extension Polkadot.js** (recommandee) : disponible sur Chrome et Firefox
- **Cesium2** : l'application officielle de la communaute Duniter
- **Tout portefeuille Substrate** supportant Ed25519
### Ma session a expire, que faire ?
Les sessions durent 24 heures. Reconnectez-vous en suivant le meme processus (challenge + signature). Vos votes et propositions precedents ne sont pas affectes.
### Que se passe-t-il si je perds l'acces a ma cle privee ?
Glibredecision ne stocke jamais votre cle privee. Si vous perdez l'acces a votre cle, vous ne pourrez plus vous authentifier avec cette adresse. Vos votes passes restent enregistres et comptabilises. Contactez la communaute Duniter pour les procedures de recuperation d'identite si necessaire.
### Puis-je me connecter depuis plusieurs appareils ?
Oui. Chaque connexion genere un jeton de session independant. Vous pouvez etre connecte simultanement depuis plusieurs appareils. Chaque session est independante et expire apres 24 heures.
## Vote
### Comment voter sur un item de document ?
1. Rendez-vous dans la section **Votes** ou accedez a une decision en cours.
2. Lisez le sujet soumis au vote.
3. Choisissez **Pour** ou **Contre** (vote binaire) ou un niveau de 0 a 5 (vote nuance).
4. Optionnellement, ajoutez un commentaire.
5. Signez le payload avec votre cle privee (votre extension de portefeuille vous le demandera).
6. Cliquez sur **Soumettre**.
### Puis-je changer mon vote ?
Oui, tant que la session de vote est ouverte, vous pouvez modifier votre vote autant de fois que necessaire. L'ancien vote est conserve en base de donnees pour l'audit mais marque comme inactif. Seul le dernier vote est pris en compte dans le decompte.
### Pourquoi le seuil est-il si eleve quand peu de personnes votent ?
C'est le mecanisme d'**inertie**. Quand la participation est faible, le seuil est eleve pour empecher qu'un petit groupe prenne des decisions engageant toute la communaute. A mesure que la participation augmente, le seuil converge vers la majorite simple. Cela incite a la participation large.
Par exemple, avec 120 votes sur une WoT de 7224 membres (1.7% de participation), il faut 78% de votes favorables. Si toute la WoT votait, 50% suffiraient.
### Comment comprendre le seuil affiche sur la jauge ?
La jauge de seuil montre :
- **La barre verte** : nombre de votes favorables actuels
- **La barre rouge** : nombre de votes defavorables
- **Le trait vertical** : position du seuil requis (calcule par la formule d'inertie)
- **Le compteur** : `votes_pour / seuil` (par exemple "97 / 94")
- **Le badge** : "Adopte" si votes_pour >= seuil, sinon "Non atteint"
Le seuil est recalcule en temps reel a chaque nouveau vote.
### Qu'est-ce que le critere Smith ?
Certaines decisions exigent un nombre minimum de votes favorables de la part des **forgerons** (membres Smith de la WoT). Le seuil est calcule par `ceil(SmithWotSize^S)` ou S est l'exposant configure. Cela garantit que les decisions techniques sont soutenues par ceux qui maintiennent le reseau.
### Qu'est-ce que le critere TechComm ?
De maniere similaire, certaines decisions exigent un nombre minimum de votes favorables du **Comite Technique**. Le seuil est calcule par `ceil(CoTecSize^T)`. Cela concerne les decisions qui affectent le runtime ou l'infrastructure technique.
### Comment fonctionnent les votes nuances ?
Au lieu de "pour" ou "contre", vous choisissez un niveau de 0 (CONTRE) a 5 (TOUT A FAIT). Les niveaux 3, 4 et 5 comptent comme positifs. Pour que le vote soit adopte, il faut que les votes positifs representent au moins 80% du total et qu'un nombre minimum de participants soit atteint (par defaut 59).
### Que signifie "D30M50B.1G.2S.1T.1" ?
C'est le codage compact des parametres de formule :
- **D30** : duree de 30 jours
- **M50** : majorite cible de 50%
- **B.1** : exposant de base 0.1
- **G.2** : gradient 0.2
- **S.1** : critere Smith avec exposant 0.1
- **T.1** : critere TechComm avec exposant 0.1
### Les votes sont-ils secrets ?
Non. Les votes et leurs signatures cryptographiques sont **publics**, conformement au principe de transparence de la gouvernance. Chaque vote peut etre verifie independamment par quiconque possede la cle publique du votant. Il n'y a pas de vote secret dans Glibredecision.
### Le seuil peut-il changer pendant le vote ?
Oui. Le seuil depend du nombre total de votes exprimes. A chaque nouveau vote, le seuil est recalcule. Il augmente legerement a mesure que la participation croit, mais converge vers la majorite simple. C'est pourquoi le resultat affiche est toujours provisoire tant que la session est ouverte.
## Documents
### Qu'est-ce qu'un document de reference ?
Un document de reference est un texte fondateur de la communaute Duniter (Licence G1, Engagement Forgeron, Reglement du Comite Technique, etc.). Il est compose d'items modulaires sous vote permanent.
### Qu'est-ce qu'un item ?
Un item est une unite modulaire d'un document : une clause, une regle, une verification, un preambule ou une section. Chaque item a une position hierarchique (ex: "1", "1.1", "3.2"), un texte courant et un historique de versions.
### Comment proposer une modification ?
1. Ouvrez le document dans la section **Documents**.
2. Selectionnez l'item a modifier.
3. Cliquez sur **Proposer une modification**.
4. Redigez le nouveau texte avec une justification.
5. Soumettez.
Un diff automatique est genere. La proposition sera soumise a examen et vote par la communaute.
### Que signifie "vote permanent" ?
Les documents actifs sont toujours ouverts aux propositions de modification. Il n'y a pas de periode speciale pour proposer des changements. Cela permet une evolution continue et organique des textes.
### Puis-je proposer plusieurs modifications a la fois ?
Oui. Vous pouvez proposer des modifications a differents items d'un meme document, ou a des items de documents differents. Chaque proposition est independante et suit son propre cycle de vie (proposition, examen, vote).
### Que se passe-t-il si ma proposition est rejetee ?
Le texte courant de l'item reste inchange. Votre proposition est archivee avec le statut "rejetee" pour transparence. Vous pouvez proposer une nouvelle modification a tout moment, eventuellement amelioree suite aux retours de la communaute.
### Comment consulter le diff d'une proposition ?
Sur la page de detail d'une version proposee, le diff est affiche automatiquement. Les ajouts sont surlignees en vert, les suppressions en rouge. Vous pouvez basculer entre la vue diff et la vue texte complet.
## Decisions et mandats
### Quelle est la difference entre un document et une decision ?
Un **document** est un texte fondateur sous vote permanent (Licence, Engagement, Reglement). Une **decision** est un processus ponctuel multi-etapes (qualification, examen, vote, execution, rapport) pour prendre un choix collectif specifique (runtime upgrade, attribution de mandat, changement de parametre).
### Comment creer une decision ?
1. Rendez-vous dans la section **Decisions**.
2. Cliquez sur **Nouvelle decision**.
3. Renseignez le titre, la description, le contexte et le type.
4. Choisissez un protocole de vote.
5. Ajoutez les etapes necessaires (qualification, examen, vote, execution, reporting).
6. Soumettez, puis utilisez **Avancer** pour demarrer le processus.
### Qu'est-ce qu'un mandat ?
Un mandat est une responsabilite formelle attribuee a un membre de la communaute pour une duree determinee, apres validation par vote collectif. Les types de mandats sont : `techcomm` (Comite Technique), `smith` (forgeron) et `custom` (personnalise).
### Comment fonctionne l'election d'un mandataire ?
Le processus suit un cycle : formulation du mandat, periode de candidature, vote collectif, assignation du mandataire, exercice du mandat, reporting et completion. Le vote utilise le meme systeme de seuil WoT avec inertie.
### Un mandat peut-il etre revoque ?
Oui. Un mandat actif peut etre revoque de maniere anticipee via l'action "Revoquer". La revocation est une action de gouvernance qui peut necessiter un vote prealable.
## Sanctuaire et archivage
### Pourquoi archiver sur IPFS et la blockchain ?
**IPFS** fournit un stockage distribue : le contenu est accessible meme si la plateforme Glibredecision est hors ligne. L'**ancrage on-chain** via `system.remark` cree une preuve horodatee immuable sur la blockchain Duniter V2. Le **hash SHA-256** garantit l'integrite du contenu. Ensemble, ils forment une **triple preuve** que le contenu n'a pas ete modifie depuis son archivage.
### Comment verifier qu'un document n'a pas ete modifie ?
Trois methodes :
1. **Verification automatique** : cliquez sur **Verifier l'integrite** sur l'entree du Sanctuaire. Le systeme recalcule le hash et verifie IPFS et on-chain automatiquement.
2. **Verification manuelle** : telechargez le contenu depuis IPFS via son CID, calculez le hash SHA-256 avec `sha256sum`, puis comparez avec le hash enregistre dans le Sanctuaire et le remark on-chain.
3. **Verification blockchain** : consultez le bloc reference dans un explorateur Duniter V2 et verifiez le `system.remark`.
### L'archivage est-il automatique ?
Oui. L'archivage est declenche automatiquement :
- Quand une version d'item de document est acceptee
- Quand une session de vote est cloturee
- Quand une decision est executee
- Quand un document est archive manuellement
### Puis-je acceder aux archives sans Glibredecision ?
Oui. Les contenus archives sont accessibles via :
- **IPFS** : utilisez le CID pour recuperer le contenu depuis n'importe quelle passerelle IPFS publique ou un noeud local
- **Blockchain** : le hash SHA-256 est enregistre dans un `system.remark` sur la blockchain Duniter V2, verifiable via tout explorateur compatible
## Questions techniques
### Sur quelle blockchain Glibredecision fonctionne-t-il ?
Glibredecision se connecte a la blockchain **Duniter V2** (basee sur Substrate). En environnement de developpement, il se connecte au reseau de test GDev (`wss://gdev.p2p.legal/ws`).
### Que se passe-t-il si la blockchain Duniter est indisponible ?
L'essentiel des fonctionnalites (consultation des documents, votes, decisions) reste accessible car les donnees sont stockees dans la base PostgreSQL locale. Seules les fonctions dependant de la blockchain sont affectees :
- L'authentification peut temporairement echouer si la verification WoT n'est pas en cache
- L'ancrage on-chain des entrees du Sanctuaire est differe jusqu'au retablissement
- Les snapshots de taille WoT/Smith/TechComm utilisent le cache
### Que se passe-t-il si le noeud IPFS est indisponible ?
L'upload sur IPFS est differe si le noeud est temporairement indisponible. Le hash SHA-256 et les metadonnees sont enregistres dans la base de donnees. L'upload peut etre relance ulterieurement. Le contenu deja uploade reste accessible via les passerelles IPFS publiques.
### Les donnees de vote sont-elles publiques ?
Oui. Les votes et leurs signatures cryptographiques sont publics, conformement au principe de transparence de la gouvernance. Chaque vote peut etre verifie independamment.
### Les mises a jour sont-elles en temps reel ?
Oui. Glibredecision utilise une connexion WebSocket pour diffuser les mises a jour en temps reel :
- Nouveaux votes soumis : la jauge de seuil est recalculee instantanement
- Votes modifies : la jauge reflette le changement immediatement
- Sessions cloturees : le resultat final s'affiche
- Un indicateur de connexion (point vert/orange/rouge) en bas a droite indique l'etat de la connexion temps reel
### Ou est heberge Glibredecision ?
La plateforme est hebergee sur une infrastructure geree par la communaute, avec deploiement automatise via Docker et Woodpecker CI. Le code source est ouvert et disponible sur le depot Git Duniter.
## Securite
### Ma cle privee est-elle transmise au serveur ?
Non. Jamais. L'authentification utilise un mecanisme challenge-response : vous signez un texte aleatoire avec votre cle privee, et seule la signature est envoyee au serveur. La cle privee reste exclusivement dans votre portefeuille (extension Polkadot.js, Cesium, etc.).
### Comment la signature Ed25519 protege-t-elle mon vote ?
Chaque vote est accompagne d'une signature Ed25519 qui garantit :
- **Authenticite** : seul le proprietaire de l'adresse Duniter peut voter en son nom
- **Integrite** : le payload signe contient le vote, l'identifiant de la session et un horodatage. Toute modification du vote apres signature est detectable.
- **Non-repudiation** : le votant ne peut pas nier avoir vote
### Mes votes peuvent-ils etre falsifies ?
Non. Chaque vote est signe cryptographiquement avec votre cle privee Ed25519. Le payload signe contient le vote, l'identifiant de la session et un horodatage. Toute modification du vote apres signature est detectable car la verification de la signature echouerait. De plus, les votes sont publics et verifiables par n'importe qui.
### Comment verifier la signature d'un vote ?
Sur la page d'une session de vote, chaque vote affiche un lien **Verifier la signature**. En cliquant, le systeme utilise la cle publique du votant (derivee de son adresse SS58) pour verifier que la signature correspond bien au payload affiche. Vous pouvez aussi effectuer cette verification de maniere independante avec n'importe quelle bibliotheque Ed25519.