8.6 KiB
Runbook opérationnel — Groupe Méditation
Opérations courantes
Inviter un nouveau membre
- Un membre de l'exécutif ouvre G1 — Inviter
- Un code à 12 caractères est généré (expire 48h)
- Le code est partagé en personne ou par SMS
- Le nouveau membre ouvre l'app → Inscription → entre le code + prénom + nom + PIN
Note : le seed crée le premier code d'invitation avec une expiration de 7 jours.
Affecter un poste
- Exécutif ouvre G3 — Affecter les postes
- Seuls les postes vacants apparaissent dans le menu déroulant
- Si tous les postes sont pourvus, un message indique de terminer un mandat d'abord (G4)
- Sélectionne le membre et le poste → le membre voit ses nouvelles tuiles immédiatement
Terminer un mandat
- Exécutif ouvre G4 — Terminer un mandat
- Sélectionne l'affectation active, saisit une note de transition
- Les permissions sont retirées instantanément et le poste redevient disponible
- Rappel : les mandats ne se terminent jamais automatiquement
Saisie hebdomadaire (pendant/après la réunion)
Collecte 7e Tradition (S1)
- Le jour de la réunion, à partir de l'heure prévue, le trésorier ouvre S1
- La date est renseignée automatiquement
- Saisir le montant et indiquer qui a l'argent ce soir
- Un second membre confirme le montant (le même membre ne peut pas saisir et confirmer)
- L'onglet mensuel affiche toutes les collectes du mois avec date, montant, qui a saisi et qui détient l'argent
Autres saisies hebdomadaires
- Animateur : S4 (thème + annonces)
- Resp. jetons : S2 (si anniversaire ou nouveau)
- Resp. littérature : S3 (si vente — le montant sera visible dans la trésorerie pour confirmation)
Trésorerie (S1T)
Le trésorier dispose de quatre onglets.
Soldes
- Solde banque : basé sur le dernier relevé + dépôts/retraits enregistrés depuis
- Disponible : solde banque − engagements non débités − réserves
- Encaisse : cash reçu mais pas encore déposé à la banque
- Réserves : prudente (500 $) + anniversaire (+20 $/mois depuis la création du groupe)
- En circulation : collectes pas encore remises au trésorier
À recevoir
Deux catégories :
- Collectes non encore reçues par le trésorier — bouton « Accuser réception »
- Ventes de littérature non remises — le responsable de la littérature vend, puis le trésorier confirme qu'il a reçu l'argent via « Confirmer la remise »
Registre
Journal détaillé de toutes les transactions du mois courant : collectes, ventes, dépenses, contributions, opérations bancaires. Avec totaux entrées/sorties.
Opération bancaire
Trois types :
- Dépôt : enregistrer un dépôt bancaire
- Retrait : enregistrer un retrait
- Relevé : saisir le solde du relevé mensuel de la banque (sert de base au calcul des soldes)
Flux mensuel recommandé
- Recevoir le relevé bancaire → enregistrer un relevé dans S1T
- Vérifier que le solde correspond → les écarts signalent des opérations non enregistrées
- Préparer le rapport financier pour la réunion d'affaires
Dépenses (S5)
Saisir une dépense
Trois onglets : Saisir, Engagements, Historique.
- La dépense est créée avec
payé = Nonpar défaut (engagement) - Les méthodes chèque/virement créent un engagement visible dans l'onglet « Engagements »
- Pour les dépenses non courantes payées par chèque/virement, une résolution est attendue
Confirmer un débit
Lorsque l'argent quitte effectivement le compte :
- Trésorier ouvre S5 → onglet Engagements
- Clique Confirmer le débit sur chaque dépense débitée
- L'engagement disparaît et le solde disponible est mis à jour
Propositions et résolutions (C8)
Soumettre une proposition
- N'importe quel membre peut soumettre une proposition en tout temps (pas besoin d'une réunion d'affaires)
- Le sujet est obligatoire ; la réunion d'affaires est optionnelle
- Un autre membre doit seconder la proposition pour qu'elle soit recevable
Voter une résolution
- L'exécutif vote Adopter ou Rejeter lors de la réunion d'affaires
- Si adoptée, un numéro de résolution est attribué (RES-2026-001)
- La proposition est automatiquement associée à la réunion d'affaires lors du vote
Lien avec le PV
Lors de la rédaction du PV (M1), le secrétaire peut importer les propositions secondées en un clic. Elles pré-remplissent la section décisions avec le sujet, le proposeur et le secondeur.
Réunion d'affaires mensuelle
Avant la réunion
- Les membres soumettent leurs propositions via C8 (en tout temps)
- D'autres membres secondent les propositions recevables
Pendant la réunion
- Secrétaire : M2 (présences) → M1 (PV avec import des propositions)
- RSG : M3 (rapport du district)
- Trésorier : présente le rapport financier (depuis le registre S1T)
- Exécutif : vote les propositions secondées (C8)
Après la réunion
Le secrétaire finalise le PV avec les décisions votées.
Envoi des contributions (M4)
- Le trésorier ouvre M4 — Envoi contributions
- Le montant disponible (après réserves) est affiché et pré-rempli
- Sélectionner le destinataire (district par défaut) et la méthode (virement/chèque)
- Enregistrer l'envoi
Gestion des rapports PDF (C1)
| Rapport | URL API | Contenu |
|---|---|---|
| Financier mensuel | /api/rapports/finances/{annee}/{mois} |
Collectes + dépenses + solde |
| Réunions du mois | /api/rapports/reunions/{annee}/{mois} |
Réunions + thèmes |
| Financier complet | /api/rapports/financier-complet/{annee}/{mois} |
Collectes + dépenses + contributions + impayés |
Note : les routes PDF nécessitent WeasyPrint installé sur le serveur.
Surveillance
Vérifier que l'application tourne
sudo systemctl status groupe-meditation
curl -s https://groupe-meditation.87-16.org/api/health
sudo journalctl -u groupe-meditation -f --no-pager
sudo tail -f /var/log/nginx/groupe-meditation-error.log
Vérifier les sauvegardes
ls -la /var/backups/groupe-meditation/ | tail -5
Statistiques base de données
sudo -u postgres psql -d groupe_meditation -c "
SELECT schemaname, tablename, n_live_tup AS lignes
FROM pg_stat_user_tables
ORDER BY n_live_tup DESC;
"
Opérations d'urgence
L'API ne répond plus
sudo systemctl restart groupe-meditation
sudo journalctl -u groupe-meditation --since "5 minutes ago"
Un membre a oublié son PIN
Pas de récupération en libre-service (par design). L'exécutif doit :
- Utiliser G2 pour désactiver le membre
- Créer une nouvelle invitation G1
- Le membre se réinscrit avec un nouveau PIN
Droit à l'oubli
- Exécutif ouvre G2 — Gérer les membres
- Sélectionne le membre → Droit à l'oubli
- Les données personnelles sont supprimées, les données historiques anonymisées
Restaurer la base après incident
sudo systemctl stop groupe-meditation
sudo -u postgres dropdb groupe_meditation
sudo -u postgres createdb -O grpmed groupe_meditation
sudo -u postgres psql -d groupe_meditation -c "GRANT ALL ON SCHEMA public TO grpmed;"
pg_restore -U grpmed -h 127.0.0.1 -d groupe_meditation \
/var/backups/groupe-meditation/grpmed_DERNIER.dump
sudo systemctl start groupe-meditation
Matrice des modules par rôle
| Module | RSG | RSG sub | Trés. | Secr. | Anim. | Litt. | Jetons | Tous |
|---|---|---|---|---|---|---|---|---|
| C1-C9 Consultation | ✓ | |||||||
| S1 Collecte | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| S1T Trésorerie | ✓ | |||||||
| S2 Remise jeton | ✓ | |||||||
| S3 Vente litt. | ✓ | |||||||
| S4 Rapport réunion | ✓ | |||||||
| S5 Dépense | ✓ | |||||||
| M1 PV | ✓ | |||||||
| M2 Présences | ✓ | |||||||
| M3 Rapport RSG | ✓ | ✓ | ||||||
| M4 Contributions | ✓ | |||||||
| M5 Inventaire | ✓ | |||||||
| M6 Commander jetons | ✓ | |||||||
| G1-G9 Gestion | ✓ | ✓ | ✓ | ✓ |
Le RSG substitut a exactement les mêmes accès que le RSG — continuité assurée. Un membre peut cumuler plusieurs postes. L'écran affiche l'union de tous ses modules.
Contacts et références
- aa87.org — Site de la Région 87
- BSG — Bureau des Services généraux (aa.org)
- Documentation API :
https://groupe-meditation.87-16.org/api/docs
«Nos leaders sont des serviteurs de confiance ; ils ne gouvernent pas.» — 2e Tradition