Files
published-language/instrument/README.md
T
matthieuandClaude Opus 5 7f03f37ef7 feat(published-language): l'instrument émet la correspondance de rangs déclarée
Percursus lit les strates en rangs (1–5, échelle fermée par ses ADR-003/004) ;
openathle les nomme (domaine, application, infrastructure, interface). La
clause loci de Percursus, déclarée à la main, est devenue inférable depuis que
la coupe existe — et l'humain ne saisit pas l'inférable (P4).

Le réglage de la juridiction peut désormais porter rang: N par strate. Le
constat émet rangs_constates — seulement si TOUTES les strates constatées en
déclarent un : une correspondance partielle laisserait deviner, et deviner
n'est pas constater. Le journal publie la table complète
(correspondance_rangs) pour joindre les constats anciens, qui ne se
réécrivent jamais. Champ optionnel, additif : aucun réglage existant ne
change de comportement.

Auto-épreuve : dix-huit vérifications, dont l'ordre des rangs, l'absence de
rangs sur l'invariant sans locus, et la table du journal.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-10 13:20:11 +02:00

4.2 KiB
Raw Blame History

L'instrument — où chaque garde vit réellement

Chaque garde vit à son étage ; l'instrument regarde où elle est réellement posée. Il court dans la CI de la juridiction observée — la juridiction se mesure elle-même ; le registre publie l'instrument et reçoit les constats (temoin/ADR-018, prismagram-corpus/ADR-061 §2.6 et §2.8).

Ce qu'il constate

Pour chaque invariant que la juridiction déclare dans le front-matter de ses parcours (invariants:), l'instrument cherche chaque fichier qui le nomme et rend un état :

État Sens
domicilie nommé par une épreuve à son étage dû, nulle part au-dessus
renforce nommé par des épreuves à son étage dû et au-dessus — défense en profondeur, signalée positivement, jamais blâmée
mal_domicilie nommé par des épreuves uniquement hors de son étage dû — le seul écart
aucun_locus nommé par aucune épreuve

L'instrument constate la nomination, pas l'exécution : c'est la CI de la juridiction qui fait passer ses épreuves ; l'instrument dit seulement où elles habitent. Un même identifiant déclaré avec deux énoncés différents est une homonymie : elle est portée dans le constat, jamais résolue ici.

Le réglage — il appartient à la juridiction

L'instrument ne connaît aucun chemin d'aucun projet : toute convention vit dans un fichier de réglage que la juridiction tient dans son dépôt, et que chaque constat épingle par son empreinte. Voir selftest/fixture/reglage.yaml pour la forme complète : juridiction, cadence_heures, parcours, strates (la première — ou celle marquée due: true — est l'étage dû), epreuves, sortie, journal_execution.

La correspondance vers une échelle tierce (rang, optionnel)

Une juridiction peut faire correspondre chacune de ses strates à une échelle tierce (p. ex. les rangs 1–5 de Percursus) en déclarant rang: N sur la strate, dans son réglage. L'instrument émet alors rangs_constates dans chaque constat — seulement si toutes les strates constatées portent un rang : une correspondance partielle laisserait deviner, et deviner n'est pas constater — et publie la table complète (correspondance_rangs) dans le journal d'exécution, pour joindre les constats anciens, qui ne se réécrivent jamais. La grossièreté se dit dans le réglage (en commentaire) : un rang absent de la correspondance est un rang que la juridiction ne sait pas instrumenter, pas un rang qui va de soi.

Ce qu'il écrit — chez la juridiction, jamais ailleurs

  • sortie : les constats, en ajout seul, et seulement quand l'état change — un constat inchangé ne produit aucun événement. Chaque constat porte ses pièces (chemin, ligne, strate), sa révision, l'empreinte du réglage : il est recalculable par quiconque clone le dépôt.
  • journal_execution : réécrit à chaque exécution — le témoin de fraîcheur. Un journal plus vieux que la cadence déclarée est un écart que le lecteur du dépôt constate ; jamais un silence.

Exécution

node instrument/run.mjs --config docs/parcours/_meta/strates.yaml
# --repo DIR   : racine du dépôt mesuré (défaut : répertoire courant)
# --dry-run    : affiche les constats sans rien écrire

Sort en erreur uniquement sur prérequis cassé (réglage absent ou illisible, aucun parcours, aucun invariant) — jamais sur un écart constaté : l'écart est le produit, pas une panne. npm run instrument:selftest joue l'auto-épreuve sur une juridiction d'essai jetable.

Limites dites (v0)

  • Seuls les invariants déclarés dans les parcours sont mesurés ; un invariant qui ne vit que dans une ADR n'est pas encore vu.
  • La citation est textuelle (mot entier) ; une épreuve qui vérifie sans nommer n'est pas constatée — nommer ses invariants dans ses épreuves est le geste que l'instrument récompense.
  • Une citation est attribuée à l'identifiant que les parcours déclarent ; si une ADR déclare un homonyme, l'attribution peut se tromper. Unifier son espace de noms d'invariants est un geste de la juridiction, en amont de toute mesure.