runward

RW™ · V0.15.0

Une preuve creuse ne passe plus.

Un audit factuel a confirmé la limite que nos propres décisions d'architecture avaient déjà nommée : la porte prouvait qu'une décision était tracée, pas que la trace pointait vers quelque chose de réel. Un pointeur vers un fichier vide passait au vert. La v0.15.0 ferme ce chemin, et durcit tout ce qui l'entoure.

Chaque durcissement de cette version exécute un déclencheur que le journal de décisions avait posé à l'avance : le resserrage était prévu, il attendait son signal. L'audit l'a donné. Et tout reste des octets : existence, contenu, empreinte. Jamais un jugement, jamais un modèle, jamais une exécution de votre code.

Ce qui change

  • La preuve se type et se vérifie. Un pointeur peut déclarer sa nature : fichier, test, ADR. La porte vérifie qu'il résout, que le fichier n'est pas vide, que le symbole ou le nom de test s'y trouve encore. Et pour toute ligne, typée ou en prose : un chemin qui résout vers un fichier vide échoue.
  • Une règle peut exiger sa forme. Une règle déclare une signature que la preuve citée doit contenir. La règle de frontière déterministe arrive signée : citer une règle sans livrer le garde, l'incident qui a fondé la porte, est désormais attrapé mécaniquement.
  • La dérive bloque, et un vert se scelle. Un pointeur qui ne résout plus fait échouer la porte stricte. runward check --freeze scelle un passage vert par empreinte : une preuve scellée qui change ou disparaît rend la porte rouge jusqu'à re-vérification et re-scellement.
  • La corvée de table disparaît. runward manifest --sync échafaude les lignes manquantes et migre les règles renommées, sans jamais remplir une décision à votre place : un statut vide reste refusé par la porte tant que vous n'avez pas tranché.
  • Le référentiel de règles devient une surface machine. runward rules --json expose l'inventaire en contrat stable ; runward explain imprime le pourquoi et le texte complet d'une règle, en une commande.
  • Les régimes deviennent des données versionnées. ISO 42001, NIST AI RMF, EU AI Act : le mapping vit dans des fichiers datés, --regime-version fige la lentille, et chaque dossier de preuve dit quelle version l'a produit.

runward passe sa propre porte

Le dépôt porte désormais sa propre mission : cadrage, architecture, topologie d'exécution, plancher, gouvernance, et les quatre manifestes de conformité remplis avec des pointeurs typés vers son propre code. La CI exige la porte stricte verte sur runward, y compris coupée du réseau. La discipline est démontrée, pas déclarée.

Le cœur est sous harnais : cinquante tests unitaires sans dépendance nouvelle, un fuzz du parseur qui ne doit jamais produire un faux vert, et la sortie OSCAL vérifiée identique à l'octet entre deux exécutions. La promesse était écrite ; elle est maintenant testée.


Installer : npx runward init

Release v0.15.0 sur GitHub · CHANGELOG

← Toutes les nouveautés