|
Some checks are pending
verifier / verifier (push) Waiting to run
Cinq jours, cinq defauts, tous de la meme famille : « quelle instance, quel inventaire ? » Neuf modules portaient chacun leur reponse. - 18 aout : P03 comparait chaque instance a l'inventaire d'une AUTRE ; - 19 aout : verifier_ports codait `principal/` en dur ; verifier_intrants et _frontiere_absente lisaient le symlink au lieu de la variable ; - 20 aout : devis_placement rendait un verdict juste sur le mauvais tenant ; - 22 aout : P35, puis P36 — la dixieme, trouvee par la preuve elle-meme. Aucune n'etait une faute d'inattention : chacune avait ete ecrite de bonne foi, a un moment ou le besoin semblait local. C'est le mode de panne de la duplication — pas l'erreur, mais la DERIVE, invisible depuis l'interieur d'un fichier. LA RESOLUTION UNIQUE. `inventory_rules` porte instance_courante(), inventaire_de(), dossier_inventaire() et plan_de(). Trois niveaux de repli, dont le TROISIEME manquait a la moitie des copies : un hosts.yml existant, puis un REPERTOIRE existant (instance neuve — c'est ce qui faisait echouer `make instancier` sur le modele public), puis le defaut. Vingt-huit modules y sont branches. CE QUI REND CE REFACTOR SUR : avant de toucher quoi que ce soit, chaque module a ete interroge sur ce qu'il resolvait, pour les DEUX ecosystemes. Apres refactor, meme mesure : 17 modules x 2 instances, diff VIDE. Aucune resolution n'a change — prouve, pas suppose. P41 echoue des qu'un module reintroduit une copie. Eprouvee en negatif : une copie replacee dans genome.py est signalee avec son numero de ligne. Trois exemptions nommees : instances.py et inventory_gui.py manipulent le SYMLINK lui-meme (bascule d'instance), et devis_opnsense lit deliberement quelle instance est ACTIVE. Elles parlent du lien, pas de la resolution. make verifier 41 OK, 0 echec, 0 saute ; make ci idem ; lint vert. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| tests | ||
| applications.py | ||
| appliquer_opnsense.py | ||
| appliquer_proxmox_fw.py | ||
| appliquer_sdn.py | ||
| bases_donnees.py | ||
| config_proxmox.py | ||
| couverture_gui.py | ||
| devis_certificats.py | ||
| devis_courriel.py | ||
| devis_expositions.py | ||
| devis_frontiere.py | ||
| devis_identite.py | ||
| devis_mtu.py | ||
| devis_opnsense.py | ||
| devis_placement.py | ||
| devis_postgresql.py | ||
| devis_proxmox_fw.py | ||
| devis_proxmox_pools.py | ||
| devis_reseau.py | ||
| devis_sdn.py | ||
| devis_versions.py | ||
| domaines.py | ||
| genome.py | ||
| instance_creer.py | ||
| instances.py | ||
| instancier.py | ||
| inventory_gui.py | ||
| inventory_host.py | ||
| inventory_rules.py | ||
| model_creer.py | ||
| modeles.py | ||
| orchestrer.py | ||
| plan_recette.py | ||
| prouver.py | ||
| proxmox_api.py | ||
| raser.py | ||
| resoudre_flux.py | ||
| serveurs.py | ||
| socle_amorcage.py | ||
| sonde_tcp.py | ||
| underlay.py | ||
| verifier_gui.py | ||
| verifier_intrants.py | ||
| verifier_ports.py | ||
| verifier_signature.py | ||
| voute.py | ||