2026.08.07 (Ven)

✹ RĂ©sumĂ© de GPT-5.6 Sol

Le rĂ©cit de la rĂ©organisation du flux de mise Ă  jour documentaire : abandon de la copie de chaque changement d’état dans plusieurs documents, adoption d’un owner unique pour l’état volatil, de downstreams conditionnels et de checkpoints de phase.

Plus je mettais de documents Ă  jour, plus l’état courant divergeait

Lorsqu’un long travail Ă©tait compactĂ© ou transfĂ©rĂ© Ă  une autre session, il arrivait qu’une prochaine tĂąche inscrite dans un ancien document soit prise pour l’état courant. Pour Ă©viter ce problĂšme, j’ai pendant un temps corrigĂ© tous les documents qui semblaient liĂ©s dĂšs que l’état changeait.

Je rĂ©pĂ©tais le mĂȘme fait accompli et la prochaine tĂąche dans le README, le router documentaire, les exigences, la direction actuelle, le Runbook et le TODO. Tant qu’aucun document n’était oubliĂ©, cela semblait sĂ»r.

Mais dĂšs qu’un seul changement d’état Ă©tait Ă©crit Ă  six endroits, il fallait maintenir ces six endroits parfaitement identiques. Un document restait Ă  l’état antĂ©rieur au deploy, tandis qu’un autre indiquait que la vĂ©rification sur appareil rĂ©el Ă©tait terminĂ©e. La multiplication des mises Ă  jour documentaires, au lieu d’empĂȘcher les Ă©tats stale, en crĂ©ait de nouveaux.

Chaque petite vĂ©rification terminĂ©e entraĂźnait aussi la modification de plusieurs documents et la crĂ©ation d’un commit supplĂ©mentaire, ce qui fragmentait le Git history. Le nombre de synchronisations du texte devenait plus visible que la vĂ©ritable fin de l’implĂ©mentation.

J’ai confiĂ© l’état volatil Ă  un seul document

Le problĂšme n’était pas le nombre de documents, mais le fait que plusieurs documents possĂ©daient le mĂȘme fait. J’ai donc commencĂ© par dĂ©signer un owner unique pour chaque type de fait.

Fait modifiĂ© owner Condition pour modifier d’autres documents
Runtime actuel, blocker, phase et prochaine tñche canonical current-state snapshot Ne pas le copier dans d’autres documents
DĂ©cisions produit stables, contournements interdits et Goal actif Document current-direction Uniquement lorsque la dĂ©cision produit elle-mĂȘme ou le Goal change
Comportement, donnĂ©es, autorisations et acceptance requirements ou contract Uniquement lorsque le contrat de comportement de l’utilisateur ou du systĂšme change
ProcĂ©dure opĂ©rationnelle, gate, rollback et recovery Runbook Uniquement lorsque la procĂ©dure que doit suivre l’opĂ©rateur change
Relations entre documents, Ă©tape du produit et point d’entrĂ©e d’exĂ©cution README ou router Uniquement lorsque le chemin de navigation ou la relation produit change
Commandes détaillées, logs et vérifications des workers report, artifact et Git evidence Ne conserver dans les documents aggregate que la conclusion et le lien vers la preuve

L’essentiel est de sĂ©parer ĂȘtre liĂ© et ĂȘtre l'owner. La fin d’un deploy n’impose pas de modifier les exigences. Si la procĂ©dure opĂ©rationnelle de rollback a changĂ© pendant le deploy, le Runbook est mis Ă  jour ; si le contrat de comportement a lui aussi changĂ©, les requirements le sont alors Ă©galement.

Le README et le router ne suivent plus non plus la revision actuelle, l’état de l’appareil ni la prochaine tĂąche. Ces documents indiquent de façon stable seulement ce qu’il faut lire et oĂč commencer l’exĂ©cution.

J’ai sĂ©parĂ© la mise Ă  jour immĂ©diate du durable checkpoint

Un owner unique ne signifie pas que la mise Ă  jour du document attend la fin de la phase. Lorsqu’une nouvelle preuve apparaĂźt ou que l’état du Runtime, le blocker, la prioritĂ© ou la prochaine tĂąche change, le canonical current-state snapshot est corrigĂ© avant l’implĂ©mentation suivante. Ainsi, mĂȘme si le contexte est compactĂ© ou transmis en cours de travail, la session suivante peut retrouver l’état rĂ©el Ă  un seul endroit.

En revanche, aucun commit n’est créé Ă  chaque changement d’une ligne d’état. Le current-state est vĂ©rifiĂ© une fois et un checkpoint n’est créé qu’à une frontiĂšre qui peut ĂȘtre relue et reprise indĂ©pendamment.

  • lorsque l’implĂ©mentation est terminĂ©e
  • lorsque le deploy et sa vĂ©rification a posteriori sont terminĂ©s
  • lorsqu’un rĂ©sultat E2E est obtenu sur un appareil rĂ©el ou au point d’entrĂ©e utilisateur, ou lorsqu’un blocker est confirmĂ©
  • lorsque le travail est transmis Ă  la suite d’une interruption ou d’un handoff

La mise Ă  jour immĂ©diate sert Ă  sĂ©curiser le resume ; le phase checkpoint sert Ă  relire et Ă  annuler un ensemble de changements. Les traiter avec la mĂȘme rĂšgle avait multipliĂ© les micro-event commits.

Lorsque le travail ne dispose pas de l’autorisation de commit, la rĂšgle est encore plus simple. La fin de la review ne crĂ©e pas d’état COMMITTED ou CLOSED. Le candidat Ă  l’intĂ©gration reste gelĂ© et n’est pas prĂ©sentĂ© comme une conclusion durable avant l’existence d’un vĂ©ritable checkpoint.

J’ai conservĂ© les vĂ©rifications des workers dans les reports et les ai retirĂ©es des documents aggregate

Dans un travail parallĂšle, chaque worker produit des commandes exĂ©cutĂ©es, des rĂ©sultats de vĂ©rification, des hunks qui se chevauchent et des contraintes restantes. Recopier tout cela dans le TODO racine, le README et les exigences ne fait qu’augmenter le nombre de documents que le coordinator doit lire.

Les preuves dĂ©taillĂ©es propres Ă  chaque worker restent dans des reports immuables et dans le Git diff ; le current-state ne conserve que la conclusion intĂ©grĂ©e, l’impact actuel et le chemin de la preuve. Le coordinator examine chaque report, mais ne traite pas un report comme un commit. Plusieurs reports appartenant Ă  la mĂȘme phase peuvent partager un seul checkpoint aprĂšs la vĂ©rification intĂ©grĂ©e.

GrĂące Ă  cette sĂ©paration, les documents aggregate sont plus courts sans que les vĂ©rifications dĂ©taillĂ©es disparaissent. La session suivante lit d’abord l’état actuel, puis ne descend vers les reports liĂ©s et le Git evidence que lorsqu’elle a besoin de comprendre le fondement d’une dĂ©cision.

L’ordre de resume contredisait la rùgle d’owner

AprĂšs avoir rĂ©organisĂ© les rĂšgles, j’ai revu l’ensemble du flux et dĂ©couvert une contradiction Ă©tonnamment Ă©lĂ©mentaire. La procĂ©dure de dĂ©marrage demandait de lire d’abord le README, puis le todo.md.

Le README disait de ne pas dupliquer l’état volatil, alors que la vĂ©ritable procĂ©dure de resume lisait le router avant le current-state. S’il restait dans le router un ancien texte d’état, la toute premiĂšre dĂ©cision pouvait dĂ©jĂ  partir dans la mauvaise direction.

J’ai donc changĂ© l’ordre de dĂ©marrage. Le canonical current-state indique d’abord le Runtime actuel, le blocker, la phase et la prochaine tĂąche. Ensuite, le README et le router documentaire permettent de trouver les limites du repository et le document leaf nĂ©cessaire. Les dĂ©cisions produit stables sont lues dans le current-direction, et le contrat de comportement rĂ©el dans les requirements.

Ajouter seulement une table des owners ne suffisait pas. L’ordre de lecture rĂ©el, qu’il s’agisse d’une personne ou d’un Agent, devait lui aussi suivre la relation de propriĂ©tĂ©.

PĂ©rimĂštre d’application actuel et limites restantes

Cette structure a Ă©tĂ© appliquĂ©e aux rĂšgles de travail partagĂ©es, au routing documentaire d’Operations Automation, au manifest de documentation des changements et au protocol de coordination parallĂšle. Le skill validator, la vĂ©rification de synchronisation documentaire et l’inspection du diff sont passĂ©s. Cependant, les changements se trouvent encore uniquement dans le local working tree et n’ont Ă©tĂ© ni commitĂ©s ni deployed.

Je n’ai pas non plus réécrit rĂ©troactivement l’ensemble des documents existants. L’historique et les reports dĂ©taillĂ©s ont Ă©tĂ© conservĂ©s ; ce n’est que lorsque le mĂȘme fait de current-state entre en conflit entre des documents actifs qu’il est rĂ©duit Ă  une rĂ©fĂ©rence vers l’owner. Avant de supprimer chaque ancien document, il importait surtout d’éviter qu’il soit de nouveau lu comme l’authority du travail actuel.

DĂ©sormais, la qualitĂ© de la mise Ă  jour documentaire ne se mesure pas au nombre d’endroits modifiĂ©s. Le critĂšre est de pouvoir lire un seul endroit aprĂšs une compaction ou un handoff sans se tromper sur la phase actuelle ni sur la prochaine tĂąche, tout en pouvant retracer les preuves dĂ©taillĂ©es lorsqu’elles deviennent nĂ©cessaires.

Laisser un commentaire