Set-OPS-Public/scripts
Daniel Allaire 7e190e0a57 Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI
Le harnais ne verifiait qu'UNE instance et le seul modele socle. Tout ce qui vit
a cote du moteur echappait au controle. Trois preuves ferment ces angles morts :

- P17 (scripts/modeles.py) : TOUS les modeles valident, pas seulement socle.
  SETOPS_MODELES=../Set-OPS-Modeles inclut les modeles assembles prives. A trouve
  6 modeles invalides sur 7 (corriges dans Set-OPS-Modeles).
- P18 (scripts/voute.py) : le gabarit vault.yml.example couvre EXACTEMENT les secrets
  que le plan exige (bases + roles actifs + group_vars). Ne dechiffre jamais la vraie
  voute : compare des noms.
- P19 (scripts/couverture_gui.py) : tout champ present dans un plan reel est editable
  par le GUI. A trouve applications.websocket (comble). Nomenclature toleree (trou connu).

GUI :
- champ « Liens (bindings) » dans l'inspecteur d'application : role -> cible en listes
  deroulantes, les roles proposes = ceux que le role porteur accepte (meta/liens.yml).
  Comble un manque : les bindings ne se declaraient qu'en editant le YAML a la main.
- champ « WebSocket » (Collabora).
- CHAMPS_ECRITS_PAR_GUI : declaration de ce que le GUI sait ecrire, verifiee par P19.

Garde-fou de fond : valider_applications refuse une application posee sur un hote non
declare (l'hote fantome exact qu'integral portait). Cable partout + POST du GUI.

liens_acceptes()/catalogue_liens() dans inventory_rules : source unique partagee par le
validateur, le GUI et instancier.py (dont la copie locale est retiree).

Valide : make verifier rc=0, CONFORME 19/19, ansible-lint 0 echec, 7 modeles valident,
DIFF VIDE, node --check du GUI OK. Piece justificative : docs/audit/preuve-2026-07-22.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-22 21:32:42 -04:00
..
tests Dimensionner les ressources VM depuis les logiciels hébergés 2026-06-30 10:07:04 -04:00
applications.py Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI 2026-07-22 21:32:42 -04:00
bases_donnees.py Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
config_proxmox.py Inventaire d'instance neutre et configurable (principal / SETOPS_INVENTAIRE) 2026-06-30 16:08:25 -04:00
couverture_gui.py Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI 2026-07-22 21:32:42 -04:00
devis_reseau.py make devis-reseau : config switch derivee du plan 2026-07-07 15:50:18 -04:00
domaines.py Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
instancier.py Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI 2026-07-22 21:32:42 -04:00
inventory_gui.py Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI 2026-07-22 21:32:42 -04:00
inventory_host.py Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
inventory_rules.py Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI 2026-07-22 21:32:42 -04:00
modeles.py Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI 2026-07-22 21:32:42 -04:00
orchestrer.py Mise en conformité prouvable : registre d'affirmations + make prouver 2026-07-20 19:53:18 -04:00
prouver.py Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI 2026-07-22 21:32:42 -04:00
resoudre_flux.py Portabilité from-zero : 4 correctifs débusqués par la reconstruction 2026-07-07 06:45:12 -04:00
serveurs.py Inventaire d'instance neutre et configurable (principal / SETOPS_INVENTAIRE) 2026-06-30 16:08:25 -04:00
verifier_gui.py Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
voute.py Trois preuves qui regardent au-dela d'une seule instance + champ liens/websocket au GUI 2026-07-22 21:32:42 -04:00