Publier Globinours 1.0.0-rc.3

This commit is contained in:
Alexandre NOEL 2026-09-03 12:39:15 +02:00
commit 9a2b4068da
325 changed files with 38230 additions and 20 deletions

47
docs/AUDIT-1.0.md Normal file
View file

@ -0,0 +1,47 @@
# Audit fonctionnel — Globinours 1.0.0
Audit exécuté le 30 août 2026. Les contrôles automatisés utilisent une base SQLite temporaire et ne lisent ni ne modifient la base du refuge.
## Contrôles validés
- reconstruction complète du schéma et application ordonnée des migrations ;
- `PRAGMA integrity_check` et absence de relations étrangères invalides ;
- installation initiale, authentification, hachage des mots de passe et permissions ;
- parcours animal, note médicale, adoption et relations avec lannuaire ;
- référentiels biologiques chat et chien ;
- notifications déchéance ;
- création dune sauvegarde, manifeste, empreintes, extraction de la base et contrôle SQLite ;
- pharmacie : réception, valorisation, consommation, historique et refus dun stock négatif ;
- export RGPD et registre des accès privés ;
- purge à échéance du seul registre technique, sans suppression automatique des contacts ;
- appareils de confiance et révocation ;
- parité des catalogues français et anglais et cohérence des variables traduites ;
- validation syntaxique des contrôleurs, services et vues modifiés.
## Défauts corrigés pendant laudit
1. Le formulaire de vermifugation utilisait le champ `medication_id` et le catalogue des médicaments ; il utilise désormais `dewormer_id` et le référentiel dédié.
2. Les actions de suppression et vérification dune sauvegarde possèdent désormais leur jeton CSRF dans le HTML, sans dépendre de linitialisation JavaScript.
3. Une archive créée nétait pas relue comme un tout hors restauration ; la vérification autonome contrôle maintenant chaque empreinte et la base extraite.
4. Une dépense médicamenteuse pouvait rester étrangère au coût de lanimal ; la consommation dun lot tarifé crée désormais la dépense correspondante.
## Validations terrain encore nécessaires
Ces points dépendent dun environnement réel et ne constituent pas des erreurs connues :
- réception effective des e-mails par le serveur choisi ;
- caméra et sélecteur de fichiers sur les modèles Android/iOS réellement utilisés ;
- tâches cron ou timer systemd sous lutilisateur PHP de production ;
- restauration complète sur une copie dinstallation avec ses médias réels ;
- installation et mise à niveau du futur paquet YunoHost ;
- ergonomie de la pharmacie avec les unités réellement employées par le refuge.
## Commandes de contrôle
```bash
php tests/run.php
php scripts/check_translations.php
php scripts/maintenance.php run
```
Une sauvegarde de production doit toujours être téléchargée ou répliquée hors du serveur. Une archive présente uniquement sur la même machine ne protège pas dune panne matérielle.