Gouvernance stock/flux — stratégique, tactique, action

Un système qui s'auto-améliore mesure sa dérivée et oublie son intégrale : il optimise l'ajout, jamais la suppression. Comment Nika OS sépare le stock du flux en trois boucles à cadences distinctes, et pourquoi une mutation n'est autorisée qu'au-delà du demi-temps de dérive.

Le défaut que personne ne voit venir

Un harnais qui s’auto-améliore mesure naturellement le flux : la tâche du jour a-t-elle abouti, en combien de temps, à quel coût, avec quelle dérive de qualité. C’est la dérivée du système, et c’est le bon signal pour régler l’exécution.

Ce qu’il ne mesure pas, c’est l’intégrale : le stock accumulé — les compétences outillées, les scripts, les dossiers de livrables, les règles, les mémoires. Personne ne l’a décidé ; c’est une conséquence mécanique du choix des instruments.

Et cette conséquence a un nom en automatique : un actionneur unilatéral sans reset dérive vers la saturation. Si le seul geste disponible est « ajouter », toutes les boucles d’amélioration, même parfaitement réglées, convergent vers un système obèse :

  • deux façons de faire la même chose, chacune à moitié maintenue ;
  • des compétences que rien n’appelle plus, mais que le routeur voit toujours ;
  • un choix d’outil de moins en moins déterministe à mesure que le catalogue grossit — au bout du compte, un modèle qui tire au sort entre trois outils presque identiques.

Le correctif intuitif — « un méta-curateur plus puissant, qui regarde tout » — est le mauvais. Mélanger stock et flux dans une seule boucle, c’est faire cohabiter des grandeurs dont les constantes de temps diffèrent de deux ordres de grandeur : coût qui explose, robustesse qui baisse, et aucun gain. La bonne réponse est une cascade de boucles à cadences séparées.

Trois boucles, trois cadences, trois grandeurs

Un seul vocabulaire pour trois lectures du même système. C’est du contrôle-commande, et c’est aussi, mot pour mot, la structure d’un Hoshin Kanri industriel.

NiveauCadenceGrandeur mesuréeRôleCe que ça donne dans Nika OS
Stratégiquehebdomadairestock (intégrale)génère la consigneinventaire des compétences, scripts et livrables → quoi fusionner, déprécier, généraliser
Tactiquenocturnetransfert stock → fluxalloue l’autorité d’agircure du flux, dosage de l’apprentissage, application des mutations validées
Actionpar tourflux (dérivée)régulation rapide, rejet de perturbationexécution des pods, usage des outils, gates sécurité/qualité

La règle d’or est transverse : chaque niveau agit à l’échelle où son signal sort du bruit. Piloter le stratégique à la fréquence de l’action, c’est du thrash — en basse fréquence, sur-réagir n’améliore pas la boucle, ça déplace l’instabilité ailleurs.

D’où une contrainte d’implémentation qui a l’air technique mais qui est doctrinale : la boucle stock n’écrit jamais dans l’exécution. Elle produit un rapport de consignes que la boucle nocturne consomme. Le stock est générateur de consigne, jamais rétroaction directe sur le tour en cours. La consigne descend, la mesure remonte — les deux sens circulent, mais jamais par le même canal ni à la même cadence.

Ce que le stock mesure

Quatre indicateurs, calculés séparément sur chaque famille de stock (on ne compare jamais une compétence avec un livrable) :

  1. Redondance — quelle part du stock est du quasi-doublon ? Mesurée par similarité sémantique à l’intérieur d’une famille, puis regroupement en composantes.
  2. Stock mort — quelle part n’a jamais servi sur la fenêtre d’observation ? Les unités trop récentes sont exclues : elles n’ont pas encore eu l’occasion d’être appelées, et piloter sur du bruit est pire que ne pas piloter.
  3. Fragmentation de routage — une intention donnée mappe-t-elle vers une compétence claire, ou vers trois ambiguës ? C’est l’entropie du choix. Basse, le routage est lisible ; haute, le système tire au sort — et c’est précisément là que naissent les hallucinations d’outil.
  4. Ratio stock/flux — le stock grossit-il plus vite qu’il ne sert ? C’est le seul des quatre qui capte une dynamique et pas seulement un état, donc le plus important : sa croissance monotone est la signature même de la saturation décrite plus haut.

Un point de méthode qui compte plus que les formules : deux unités très similaires mais utilisées avec succès dans des contextes distincts ne sont pas des doublons. C’est de la diversité utile, et l’écraser au nom de la propreté détruit de la robustesse. Le score de redondance d’une paire est donc pondéré par le recouvrement de ses contextes d’usage : on fusionne ce qui sert le même usage, pas ce qui se ressemble.

Le demi-temps de dérive : pourquoi on n’agit pas sur une mesure

Un indicateur de stock est un signal lent noyé dans un bruit de mesure élevé. Une semaine d’usage ne dit presque rien. Réagir à une mesure ponctuelle, c’est muter sur du bruit.

Chaque indicateur est donc filtré — estimation d’état bayésienne scalaire (Kalman/EWMA), plus un détecteur de rupture cumulatif de type Page-Hinkley. Ces deux briques sont des classiques publics, et elles sont choisies précisément parce qu’elles restent auditables : on peut toujours dire pourquoi le système a bougé.

Le filtre livre la grandeur qui gouverne toute la gouvernance, le demi-temps de dérive : le nombre de cycles sous lequel un changement observé n’est pas distinguable du bruit. C’est la constante de temps en dessous de laquelle aucune mutation n’est autorisée.

Et le séquencement ne s’inverse jamais :

alarme de rupture → proposition → gates → application au cycle suivant.

Une alarme est un déclencheur d’instruction, jamais une réaction immédiate.

Le cadre s’applique à lui-même : on ne passe à un estimateur plus riche (multivarié, ou à gain appris) que si la donnée le justifie — corrélation mesurée entre indicateurs, ou résidus du filtre linéaire qui cessent d’être blancs. Et il y a une borne assumée : un modèle d’état entièrement appris, dont on ne pourrait plus expliquer la décision, est exclu par principe. La sécurité d’abord, ça veut dire l’auditabilité d’abord.

Trois opérations, dont une seule crée de la valeur

Pour chaque groupe de quasi-doublons, trois gestes possibles :

  • Fusionner — garder l’unité au meilleur usage prouvé, rediriger les appels.
  • Déprécier — marquer obsolète et rediriger ; la suppression physique est différée d’un cycle, après observation de non-régression.
  • Généraliser — le doublon cachait une abstraction commune : on extrait la primitive parente.

Le troisième est le seul qui ne soit pas du ménage. C’est la fabrique de primitives : un mécanisme observé qui marche, dont le signal est sorti du bruit, est abstrait en brique réutilisable et remonte enrichir la politique. Le demi-temps de dérive garde cette induction honnête — on ne promeut pas un coup de chance en primitive.

Mutation autonome, sécurité immuable

C’est le point de doctrine qui surprend le plus, et c’est le cœur du dispositif.

Mutable en autonomie, sans validation humaine, sur preuve mesurée : les méthodes, les scopes, les workflows, les compétences, les stratégies d’implémentation. Exemple canonique : si une stratégie de récupération d’information en bat mesurablement une autre sur un périmètre donné, le système change de stratégie sur ce périmètre-là, seul. C’est ce qui le rend antifragile plutôt que simplement robuste.

Immuable, jamais muté — ni automatiquement, ni autrement : la couche constitutionnelle. Sécurité, secrets, frontières de sortie de données, processus critiques, invariants d’identification, isolation réseau. Le kernel ne se mute pas lui-même.

La distinction qui rend les deux compatibles porte sur la nature de ce qu’on touche :

On mute la méthode, jamais le principe de sécurité.

Le principe « aucune affirmation factuelle sans vérification » est immuable. L’implémentation de cette vérification est mutable sur preuve, tant que le principe tient. Confondre les deux, c’est soit se figer, soit se saborder.

Conséquence de conception, et non détail : une mutation qui toucherait la couche immuable n’est pas escaladée vers un humain pour arbitrage — elle est refusée et journalisée. Une frontière qui peut se négocier au cas par cas n’est pas une frontière.

Ce qui remplace la validation humaine : cinq gates conjonctifs

Le garde-fou n’est plus « quelqu’un valide », c’est « la mesure valide ». Les cinq conditions sont conjonctives — toutes doivent passer :

GateCe qu’il exigeCe qu’il empêche
Immuabilitéla mutation ne touche aucun chemin constitutionnell’auto-modification du noyau
Observabilitéassez d’observations, unités assez anciennespiloter du bruit
Dérive hors bruitrupture détectée et écart de plusieurs écarts-typesréagir à une fluctuation
Bande passantepas deux mutations sur la même unité en moins d’un demi-temps de dérivele thrash
Réversibilitéunité versionnée, point de retour identifié, passe à blanc réussiel’irréversible

Deux principes de dosage complètent les gates. D’abord, le pas n’est jamais all-in : sur un signal bruité, on n’applique qu’une fraction bornée des mutations candidates par passe, triées par effet attendu — et on continue de sonder. Ensuite, la première passe n’applique rien : elle produit son rapport et ses propositions. Appliquer est un geste explicite, ultérieur, une fois la réversibilité démontrée sur le stock réel.

Boucler la boucle : récompenser la parcimonie

Un dernier levier, sans lequel tout le reste rame contre le courant. Si le signal d’apprentissage ne récompense que le flux — « la tâche est faite » — alors réécrire une brique qui existe déjà rapporte autant que la réutiliser. Le système apprend à ajouter.

Le signal d’apprentissage porte donc aussi un terme de parcimonie, pondéré et borné :

  • réutiliser une brique existante, ou généraliser en une primitive parente : récompensé ;
  • créer un artefact qui n’a pas d’équivalent : neutre — créer n’est pas un défaut ;
  • recréer ce qui existe déjà à l’identique fonctionnel : pénalisé.

Et une règle d’honnêteté de mesure, valable pour toute cette page : un indicateur qu’on ne sait pas mesurer sur un cycle donné est rendu « non mesuré », jamais zéro. Un zéro par défaut est un faux vert, et un faux vert coûte plus cher qu’un trou déclaré — parce qu’on arrête de chercher.

En une phrase

Mesurer le flux règle l’exécution ; mesurer le stock est ce qui empêche un système auto-améliorant de grossir jusqu’à s’étouffer — à condition que chaque boucle agisse à sa propre cadence, que rien ne mute avant que le signal sorte du bruit, et que la couche de sécurité, elle, ne mute jamais.