Résumé

  • La révision 01 d’un projet individuel de format d’audit pour agents ajoute un état de consommation : plafond, sommes dépensées, autorisations en attente, montant demandé et version du solde consulté.
  • Quand la réponse d’un outil se perd, le montant autorisé reste réservé jusqu’à ce qu’une trace du même appel établisse son effet. Une nouvelle dépense fondée sur un ancien état peut franchir le plafond.

La réponse s’égare, la réservation reste

Un agent lance un paiement autorisé. Aucune réponse ne revient. Le réflexe le plus dangereux serait de conclure que l’argent n’a pas bougé et de rendre immédiatement la somme au budget disponible. Dans la nouvelle proposition de Sankalp Gilda, un appel sans réponse reste une promesse en suspens. La réservation ne disparaît qu’avec une trace de l’effet du même appel.

La publication du 27 octobre concerne un Internet-Draft individuel, comme l’indique le Datatracker de l’IETF. La section nouvelle, absente de la version 00, ne fixe aucun vrai budget. Elle propose les champs nécessaires pour découvrir qu’une décision a dépensé une autorité déjà engagée ailleurs.

Un plafond cumulatif ne se contrôle pas en regardant chaque facture isolément. Le projet oblige à réunir le montant déjà consommé, les montants accordés mais pas encore réglés, puis la requête actuelle. La date d’un solde peut être récente et ce solde néanmoins oublier une autorisation encore en vol. Le nouvel état consumption-state enregistre donc le document qui fixe le plafond, l’unité monétaire, la limite, consumed, reserved, requested, les requêtes retenues dans held et la révision de l’état lue par le décideur.

Une répétition n’est pas une deuxième dépense

L’exemple du texte est volontairement terre à terre. Sur un plafond de 50 000 pence, 30 000 sont consommés et 12 000 réservés pour un premier appel dont le résultat manque. Si le même appel est relancé avec le même condensat de requête, il occupe toujours 42 000 pence au total ; il ne faut pas compter deux fois ses 12 000. Une autre demande de 12 000 amènerait, elle, le total à 54 000 : le décideur devrait la refuser. Ces chiffres illustrent la règle ; ils ne proviennent d’aucune transaction rapportée.

Deux preuves seulement dénouent la réservation. Si un enregistrement du même appel montre que l’effet observé a eu lieu, la somme passe de reserved à consumed. S’il montre qu’aucun effet n’a eu lieu, elle est libérée. L’absence d’une réponse réseau ne démontre ni l’un ni l’autre. Le projet choisit ainsi de laisser un budget momentanément bloqué plutôt que de prêter à la requête suivante de l’argent dont le sort reste inconnu.

L’autre innovation tient à la lecture de plusieurs dossiers ensemble. Chaque décision indique stateRevision, la version du solde qu’elle a consultée. Un permis postérieur qui lit un état ancien et omet une autorisation antérieure encore ouverte laisse une trace du risque de double dépense. Une libération sans enregistrement montrant l’absence d’effet laisse une autre anomalie. L’auditeur doit ordonner les enregistrements par révision et suivre chaque autorisation jusqu’à sa consommation ou à sa libération.

Le projet accepte même un enregistrement cohérent qui dit qu’un appel a été autorisé au-delà du plafond. Le refuser comme « mal formé » ferait disparaître la faute du dossier. Un format d’audit doit pouvoir écrire qu’un contrôle a échoué. Cela ne signifie pas qu’un fichier signé garantit la vérité de tout ce qu’il contient : la section de sécurité distingue la cohérence interne d’une observation indépendante du monde.

À qui appartient le solde ?

Le plafond vient d’une délégation d’autorité. Le point de décision lit un état, l’outil agit, un observateur décrit l’effet et quelqu’un conserve les preuves. Lorsque ces fonctions sont réunies chez le même opérateur, le lecteur doit savoir qui lui remet l’ensemble des enregistrements. Le projet donne une façon de comparer des traces reçues ; il ne peut pas révéler une trace que personne n’a remise.

Le détail comptable porte donc un enjeu de gouvernance : qui peut réserver une somme, qui constate qu’une opération s’est faite, qui autorise sa libération et qui prouve que la décision suivante a vu la bonne version ? Une réponse perdue ne confère pas une autorité nouvelle. Elle ouvre un travail de rapprochement.

Sources originales