# Preuve de conformite — Set-OPS — 2026-07-20 > Genere par `make prouver` (`scripts/prouver.py`). **Rejouable** : relancer > reproduit ce rapport. Chaque preuve rejoue l'outillage existant du depot ; > aucune validation n'est reimplementee ici. Voir le mode d'emploi : > [`docs/audit/README.md`](README.md), et le registre trace : > [`docs/audit/affirmations.md`](affirmations.md). - **Instance** : `instance` — inventaire `instance/inventories/principal/hosts.yml` - **Verdict** : ✅ CONFORME (16 OK · 0 echec · 0 saute) ## Preuves | # | Preuve | Affirmations | Statut | Detail | |---|---|---|---|---| | P01 | Lint (ansible-lint) | AFF-006 | ✅ OK | | | P02 | Tests unitaires (inventory_host) | — | ✅ OK | 4 tests passes. | | P03 | Diff-vide du plan (inventaire genere) | AFF-001, AFF-004, AFF-030, AFF-031, AFF-032 | ✅ OK | DIFF VIDE : le plan reproduit exactement l'inventaire actuel. Bascule possible. | | P04 | Groupes <-> playbooks homonymes | AFF-008 | ✅ OK | | | P05 | Dependances causales de groupes | AFF-009, AFF-084 | ✅ OK | | | P06 | Validateurs de registres (serveurs/apps/bases/domaines) | AFF-003 | ✅ OK | Registre des domaines valide. | | P07 | GUI (node --check) | AFF-033 | ✅ OK | JS du GUI : syntaxe valide (node --check). | | P08 | Orchestration (couches + graphe) | AFF-070 | ✅ OK | Orchestration coherente : 30 groupes classes, aucun cycle, aucune arete en arriere. | | P09 | Flux reseau (schema + matrice) | AFF-071 | ✅ OK | Flux coherents : 29 rôles, 63 flux, schéma + matrice OK. | | P10 | Handlers <-> notify | AFF-034, AFF-035 | ✅ OK | Tout notify pointe vers un handler du meme role (49 roles). | | P11 | Syntaxe des playbooks (--syntax-check) | AFF-083 | ✅ OK | playbook: playbooks/proxmox/cloner_vm_debian.yml | | P12 | Existence des runbooks cites | AFF-010, AFF-011, AFF-012, AFF-083 | ✅ OK | 17/17 runbooks/registres cites presents. | | P13 | Invariants structurels/doctrinaux | AFF-015, AFF-022, AFF-037, AFF-038, AFF-062 | ✅ OK | LICENSE, socle dossier, pas de couches paralleles, SSH clef-only, nftables off : OK. | | P14 | Pas de chemin lab/ code en dur | AFF-097 | ✅ OK | Aucun chemin instance/inventories/lab/group_vars code en dur. | | P15 | Modele public socle valide | AFF-022, AFF-099 | ✅ OK | Modele public socle : domaines/serveurs/applications/bases valides. | | P16 | Inventaire Ansible complet (--list) | AFF-030 | ✅ OK | 14 hotes, 29 groupes (inventaire dechiffre et parse). | ## Couverture des affirmations ✅ du registre Chaque affirmation ✅ automatisable est couverte par la preuve indiquee ci-dessus. Les ✅ **structurelles/doctrinales** non rejouables par une commande (ex. AFF-005 `make`=aide, AFF-014 ciblage groupe, AFF-024 `instancier-appliquer`, AFF-051 autorite d'AGENTS.md, AFF-073/075 gardes `make`, AFF-090 wiki) ont ete verifiees a l'audit ; elles restent hors du harnais recurrent (rien d'executable a rejouer). ## Declarations d'intention (⚪ invérifiables localement — assumees) Ces affirmations ne sont pas rejouables hors production ; elles sont **assumees** comme declarations d'intention, non comme preuves : - **AFF-036** — « testables avec `--check` autant que possible » : verifiable seulement contre une flotte vivante. - **AFF-091** — contenu pedagogique du wiki : affirmations conceptuelles. - **AFF-096** — « GUI 100 % francais » : revue exhaustive des libelles rendus, non automatisee. - **AFF-007** — hote d'exemple `web-frontal-01` : placeholder assume. _Rapport genere le 2026-07-20._