D-82 : patient 0 n est le parent de personne — le dilemme est tranche
Some checks are pending
verifier / verifier (push) Waiting to run

Ouvert le 2026-08-28, referme par les faits plus que par le raisonnement. Trois
d entre eux lui ont retire ce role un par un, et il fallait les regarder ensemble :

  D-81 a donne l autorite du genome a la forge du SITE. Son dernier lecteur,
  Chezlepro, a ete corrige le 08-26 ; Technolibre le 08-31. Il ne sert donc le
  genome a personne.

  Le denominateur commun qu il portait vit dans les modeles depuis le 08-24, sous
  le nom `origine`. Ce n est plus lui qu on copie.

  L ANCETRE ETAIT LOCATAIRE DE SON ENFANT : index 29 sur la fabric de
  SITE-Chezlepro, qui descend de lui. Il ne peut pas etre le chemin de reprise de
  son propre hote.

Des trois issues posees, la deuxieme l emporte — non parce qu elle etait la plus
elegante, mais parce que les deux autres avaient cesse d etre disponibles. Et le
depot l avait deja suivie sans le declarer : serveur_forge_site, puis
serveur_cache_site, puis serveur_resolveur_site. Trois services pretes, un patron.

CE QUE CA NE REGLE PAS, ET QUI EST ECRIT. Patient 0 existait pour eliminer un point
unique de defaillance — eregion, hors flotte, que Set-OPS ne deploie ni ne prouve.
Il ne l a pas elimine : IL A ETE PROMU. Le poste y pousse, la forge du site en tire.
La dette a change de proprietaire, pas de nature ; elle appartient au SITE. Un
objectif qu on abandonne sans le dire devient un objectif qu on croit atteint.

Ce qu il garde : sa place de pair dans la famille du genome, et sa forge de travail.
Ce qu il perd : le rang.

make verifier : vert. make prouver : CONFORME, 55 OK, 0 echec.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019f91zs9SDdwSzL2CVei6on
This commit is contained in:
Daniel Allaire 2026-08-31 20:57:25 -04:00
parent 35f3881218
commit 89ca92b132
4 changed files with 55 additions and 38 deletions

View file

@ -1,5 +1,42 @@
# CHANGELOG — Set-OPS
## 2026-08-31 — D-82 : patient 0 n'est le parent de personne
**55 preuves.** Le dilemme ouvert le 2026-08-28 est referme, et ce sont les faits qui l'ont
tranche plus que le raisonnement. Trois lui ont retire ce role un par un — il fallait les
regarder **ensemble** pour le voir :
- **D-81** a donne l'autorite du genome a la forge du SITE. Son dernier lecteur, Chezlepro,
a ete corrige le 08-26 ; Technolibre le 08-31. *Il ne sert donc le genome a personne.*
- Le **denominateur commun** qu'il portait vit dans les modeles depuis le 08-24, sous le
nom `origine`. Ce n'est plus lui qu'on copie.
- **L'ancetre etait locataire de son enfant** : index 29 sur la fabric de `SITE-Chezlepro`,
qui descend de lui. *Il ne peut pas etre le chemin de reprise de son propre hote.*
Des trois issues posees mercredi, la deuxieme l'emporte — non parce qu'elle etait la plus
elegante, mais parce que les deux autres avaient cesse d'etre disponibles. **Et le depot
l'avait deja suivie sans le declarer** : `serveur_forge_site`, puis `serveur_cache_site`,
puis `serveur_resolveur_site`. Trois services pretes, un seul patron.
### Ce que ca ne regle pas, et qui est ecrit
Patient 0 existait pour **eliminer un point unique de defaillance** — `eregion`, hors
flotte, que Set-OPS ne deploie ni ne prouve. Il ne l'a pas elimine : **il a ete promu**. Le
poste y pousse, la forge du site en tire.
La dette a change de proprietaire, pas de nature ; elle appartient au SITE. *Un objectif
qu'on abandonne sans le dire devient un objectif qu'on croit atteint.*
**Ce qu'il garde** : sa place de pair dans la famille du genome, et sa forge de travail —
un ecosysteme garde la sienne meme quand il ne detient plus le genome de personne.
**Ce qu'il perd** : le rang.
### Une panne dormante, trouvee en reglant le cas
Technolibre chainait encore son cache sur patient 0. Le meme defaut a coute quinze machines
sans `apt` chez Chezlepro le jour ou ses VM ont ete eteintes ; chez Technolibre, qui n'a pas
encore de VM, il etait **dormant** et se serait reveille au premier montage.
## 2026-08-31 — La recette dependait de l'heure : un depot occupe n'est pas une sauvegarde cassee
**55 preuves. `make valider` : rc=0.** La reconstruction de Chezlepro est validee de bout

View file

@ -28,7 +28,7 @@ README de rôles). Cette page comble ces deux trous.
| documents | 38 | `docs/*.md` |
| pièces d'audit | 31 | `docs/audit/*` |
| unités de wiki | 27 | `wiki/*.md` |
| décisions en vigueur | 78 | lignes `\| **D-nn** \|` de `decisions-architecture.md` |
| décisions en vigueur | 79 | lignes `\| **D-nn** \|` de `decisions-architecture.md` |
| décisions renversées | 3 | lignes `\| **D-nn** —` du même document |
## 1. À lire d'abord (dans l'ordre)

View file

@ -55,6 +55,7 @@ sont les seules vérifiables.
| # | Décision | Pourquoi | Détail | Garde |
|---|---|---|---|---|
| **D-82** | **Patient 0 n'est le parent de personne.** Il est la **mise en œuvre de référence** du modèle `origine` — le plus petit écosystème complet — et un pair de la famille du génome, pas sa racine | trois faits l'ont retiré un par un : D-81 a donné l'autorité du génome à la forge du SITE (son dernier lecteur corrigé le 2026-08-26, Technolibre le 08-31) ; le dénominateur commun vit dans les modèles depuis le 08-24 ; et **l'ancêtre était locataire de son enfant** — index 29 sur la fabric de `SITE-Chezlepro`, qui descend de lui. Ce qu'il devait éliminer — le SPOF `eregion`, hors flotte — n'a PAS été éliminé mais **promu** : le poste y pousse, la forge du site en tire. Cette dette appartient désormais au SITE, et la nommer est le minimum : *un objectif qu'on abandonne sans le dire devient un objectif qu'on croit atteint* | `OPS-Patient0/README.md`, `docs/filiation-emancipation.md` | — |
| **D-81** | **La forge du SITE fait autorité pour le génome.** Toute autre copie — y compris celle d'où le moteur a été poussé jusqu'ici — est un **miroir**. Le poste de l'exploitant ne route pas jusqu'à elle : c'est le **runner du site** qui publie, par `make genome-pousser` | un écosystème se reproduit depuis la forge de son site : c'est de là qu'il clone son moteur, ses plans, ses modèles. Si l'autorité est ailleurs, cette forge devient un cache qu'on croit à jour — et le 2026-08-26 elle était **quatre commits en arrière** sans que rien ne le signale, dont le correctif qui désarme le pare-feu Proxmox. **Un écosystème qui se reproduit depuis une forge en retard reproduit ses défauts.** Le poste n'a de patte que sur l'administration, et on ne perce pas de chemin pour lui : le runner existe pour ce travail | `playbooks/maintenance/genome_pousser.yml`, `scripts/genome_colis.py`, `Makefile` §genome-pousser | — |
| **D-13** | Un **hébergeur** sert plusieurs **tenants** et a son tenant par défaut | Chezlepro est les deux à la fois, ce qui masquait la distinction | `frontiere-opnsense.md` §2 | — |
| **D-14** | `underlay.yml` appartient à l'**hébergeur**, monté par symlink | ce sont ses commutateurs, ses câbles ; le moteur est générique, un tenant n'en possède pas | `sdn-evpn.md`, `underlay.yml.example` | — |

View file

@ -155,47 +155,26 @@ l'état de son écosystème d'un coup d'œil plutôt qu'en fouillant chaque rôl
le drapeau est levé sans que l'amont soit nommé : emprunter sans dire à qui, c'est ne rien
déclarer du tout.
## Qui est le parent ? — dilemme ouvert au 2026-08-28
## Qui est le parent ? — tranché le 2026-08-31 (D-82)
Ce document décrit la filiation sans dire **de qui** un écosystème descend. La question
n'est plus théorique depuis que les runners savent reconstruire : chaque écosystème rebâti
grave sa réponse dans son plan (`serveur_ops_forge_amont`), et N réponses différentes font
N lignées qu'on ne saura plus rapprocher.
Le dilemme est resté ouvert trois jours. Les faits l'ont tranché plus que le raisonnement :
**personne n'est le parent, et la forge du SITE est l'autorité.**
La chaîne réelle, mesurée :
Trois issues avaient été posées. C'est la deuxième qui l'emporte, non parce qu'elle était
la plus élégante, mais parce que les deux autres avaient cessé d'être disponibles :
```
poste de l'exploitant ──push──▶ eregion.chezlepro.ca:2222
= forge.alliance-boreale.ca ◀── HORS FLOTTE
│ git bundle │ miroir 8 h
▼ ▼
forge du SITE ★ autorité (D-81) forge de patient 0 ★ « la forge mère »
│ │
▼ ▼
les tenants du site (plus aucun lecteur)
```
- **patient 0 redevient la source** — impossible sans le rendre atteignable depuis *tout*
site, alors qu'il vit dans la fabric d'un seul, en locataire de son propre descendant ;
- **le SITE est la source** ✔ — c'est ce que D-81 avait déjà fait, et que le reste du dépôt
a suivi sans qu'on le déclare : `serveur_forge_site`, puis `serveur_cache_site`, puis
`serveur_resolveur_site`. Trois services prêtés, un seul patron ;
- **une famille de pairs** — reste vraie *pour la redondance*, et c'est ce que patient 0
garde : il porte un miroir du génome comme chaque écosystème. Ce qu'il perd, c'est le
rang, pas la place.
Trois faits qui ne tiennent pas ensemble :
1. **Patient 0 ne sert plus personne.** Chezlepro était son dernier lecteur, corrigé le
2026-08-26 vers la forge du site. Son dépôt affirme toujours sa raison d'être — *« porter
les dépôts qui fabriquent les écosystèmes, et les servir à ses enfants »*.
2. **Le point unique de défaillance n'a pas été éliminé, il a été promu.** Patient 0 existe
explicitement pour remplacer une machine hors flotte que Set-OPS ne déploie ni ne prouve
— or c'est de cette machine que la forge faisant autorité tire son contenu.
3. **Le parent est locataire de son enfant.** Patient 0 est un tenant de la fabric d'un
site qui descend de lui. L'ancêtre ne peut pas être le chemin de reprise de son hôte.
Trois issues, à trancher par l'exploitant — et par lui seul, comme toute émancipation :
| issue | ce qu'elle impose |
|---|---|
| **patient 0 redevient la source** ; chaque forge de SITE en miroite | le rendre atteignable depuis **tout** site — il vit aujourd'hui dans la fabric d'un seul |
| **le SITE est la source** ; patient 0 devient une **référence**, non un ancêtre | assumer que la racine est le poste + la machine hors flotte, donc l'intégrer à la flotte ou la remplacer |
| **pas de racine — une famille de pairs** ; D-81 se restreint à « autorité pour les tenants d'un site » | bâtir non pas une hiérarchie mais une **preuve de convergence** entre toutes les copies vivantes |
*Aucune n'est bloquante pour la reconstruction en cours : les tenants pointent déjà sur la
forge de leur site, ce qui reste vrai dans les trois.*
**Ce que ça ne règle pas.** Le point unique de défaillance que patient 0 devait éliminer —
`eregion`, hors flotte — n'a pas disparu : il alimente maintenant l'autorité. La dette a
changé de propriétaire, pas de nature. Elle appartient au SITE.
## État au 2026-08-28