ARGH

DossiersDossiers

Toutes les histoires sont rangées selon l’endroit de la cuisine où le problème apparaît.Tous les incidents sont classés selon l’étape du parcours où le mécanisme devient observable.Every story is arranged by the place in the kitchen where the problem appears.Every incident is classified by the stage where its mechanism becomes observable.

164 entréesentries

Le menu et les recettesObjectifs et instructionsThe menu and recipesObjectives and instructions

Ce qui doit être préparé, les règles à suivre et ce qui peut rester écrit trop longtemps.Spécifications, consignes, politiques et dérives de portée ou de persistance.What must be prepared, the rules to follow and what may stay written for too long.Specifications, instructions, policies and scope or persistence drift.

4 fiches4 entrées4 cards4 entries

Les recettes abandonnées restent sur le pupitre du soirDes ADR historiques continuent d'alimenter le contexte actifTonight's recipe stand still holds yesterday's rejected dishesRetained decisions can outlive their authority in active context

Un chef raconte que ses anciennes recettes restent mêlées à celles du soir, même après leur abandon. Certaines portent encore « à essayer » alors qu'elles sont déjà servies. Il propose de trier le pupitre, mais le résultat n'est pas encore démontré.Un retour d'expérience publié dans mattpocock/skills décrit des ADR rejetés ou dépassés encore actifs, ainsi que des statuts Proposed décalés du code livré. L'issue propose un cycle de vie explicite. Le bundle conserve un signalement, sans reproduction indépendante ni correctif établi.A cook opens the service folder and finds dishes the house has already dropped. Recipes already in use still sit among the trials. This is one chef's account; the suggested reorganisation has no demonstrated outcome.The mattpocock/skills report separates two kinds of drift: retired ADRs remain active, while implementation advances past their recorded status. Its proposed lifecycle has not been shown to resolve either problem. The available evidence is a single reported experience, not an independently reproduced result.

La recette change avant le classeur de la maisonLe comportement par défaut a changé avant que la documentation n’en rende compteThe recipe changes before the house binderDefault behavior changed before the documentation caught up

Les fiches de recette commencent comme un essai que chacun peut refuser. Elles deviennent ensuite la manière normale de servir. Pourtant, le classeur et les écriteaux gardent l’ancien nom. La maison veut encore guider ceux qui travaillent comme avant.Les Agent Skills sont passés d’un opt-in expérimental à un comportement activé par défaut, tandis que la documentation et l’UI conservaient l’ancien vocabulaire expérimental, par compatibilité.Recipe cards begin as a trial that each cook may refuse. They later become the normal way to serve. Yet the binder and signs keep the old name. The house still wants to guide cooks working the earlier way.Agent Skills moved from experimental opt-in to default-on behavior, while documentation and UI kept the older experimental wording for compatibility.

Le résumé de la soirée oublie les tables qui attendentLa compaction du contexte a gardé le récit et perdu l’obligation en coursThe night’s summary forgets the tables still waitingContext compaction kept the story and dropped the live obligation

Dans deux maisons, un long service remplit entièrement le pic à commandes. La brigade résume alors la soirée sur une feuille et retire les bons. Le remplaçant connaît les retards et les manques. Il ne sait plus quelles tables attendent encore.La compaction du contexte pouvait conserver des fragments d’historique tout en perdant l’obligation active : ce qui restait dû et ce qui comptait comme terminé. Le modèle repris restait cohérent sur le passé.In two houses, a long service fills the order spike. The brigade summarizes the night on one sheet and removes the tickets. Whoever takes over knows the delays and shortages. The waiting tables are no longer known.Context compaction could keep fragments of history while losing the live obligation: what was still owed, and what counted as done. The resumed model stayed coherent about the past.

Deux brigades obéissent différemment au même classeurLes fichiers d’instructions projet convergent, leur précédence et leur confiance nonTwo brigades obey the same binder differentlyProject instruction files converge; their precedence and trust rules do not

Le même classeur de consignes passe entre trois cuisines. Deux brigades lisent exactement les mêmes feuilles. Rien ne prouve qu’elles obéissent à la même page ni qu’elles comprennent chaque phrase de la même façon.Les fichiers d’instructions projet passent de conventions propres à chaque produit vers une interopérabilité croissante. La compatibilité porte sur les noms et le format. Les règles de précédence et le modèle de confiance restent, eux, les différences critiques.The same instruction binder travels through three kitchens. Two brigades read exactly the same pages. Nothing proves that they obey the same page or understand each line in the same way.Project instruction files are moving from product-specific conventions toward interoperability. Compatibility covers names and format. Precedence rules and the trust model remain the critical differences.

Les fournisseursDépendances externesThe suppliersExternal dependencies

Ce qui arrive d’une autre maison et peut changer sans prévenir la brigade.Services, bibliothèques et projets amont dont le comportement échappe au système.What comes from another house and may change without warning the brigade.Services, libraries and upstream projects whose behavior is outside the system.

7 fiches7 entrées7 cards7 entries

Un rideau baissé peut raconter plusieurs fins« Vivant ou mort » est le mauvais modèle de trajectoire de projetOne closed shutter can hide several endings‘Alive or dead’ is the wrong model for a project’s trajectory

Dans une rue de sept restaurants, plusieurs rideaux sont baissés pour des raisons différentes. L’un annonce sa dernière soirée, un autre rouvre ailleurs, un troisième laisse seulement sa carte en vitrine. Le même silence en façade peut donc cacher des fins sans rapport.La reconstruction historique fait apparaître plusieurs formes de « mort » incompatibles entre elles : sunset stratégique, maintenance, supersession, read-only, archive à cause inconnue, pivot raté, déplacement de repository et fort ralentissement. Un état binaire ne peut pas représenter ces trajectoires sans perdre la cause.Along a street of seven restaurants, several shutters are down for different reasons. One announced its last service, another reopened elsewhere, and a third only leaves its menu in the window. The same quiet frontage can hide unrelated endings.Historical reconstruction surfaced several mutually incompatible shapes of ‘death’: strategic sunset, maintenance, supersession, read-only, archive with unknown cause, failed pivot, repository move and severe slowdown. A binary state cannot represent those trajectories without discarding the cause.

La maison ferme avec des centaines de commandes au tableauUn arrêt stratégique pendant que des centaines d’issues restaient ouvertesThe house closes with hundreds of orders on the boardA strategic wind-down while hundreds of issues stayed open

Le tableau porte encore des centaines de commandes lorsque la maison ferme. Ce n’est pas un manque de clients : les patrons décident l’arrêt. Ils retirent des parties entières de la carte, servent une dernière fournée, puis certains continuent ailleurs.Roo Code ne s’est pas éteint par inactivité. Le produit a été arrêté délibérément : des surfaces majeures ont été supprimées, une version finale a été livrée, et la continuité s’est déplacée vers des alternatives et des forks communautaires.The board still carries hundreds of orders when the house closes. Diners did not disappear; the owners chose to stop. Whole menu sections come down, one last batch leaves, and some cooks continue elsewhere.Roo Code did not fade out through inactivity. The product was wound down deliberately: major surfaces were removed, a final release shipped, and continuity moved toward alternatives and community forks.

Le rideau est baissé, mais la raison reste inconnueTaskWeaver a été archivé ; la cause exacte n’est pas établieThe shutter is down, but the reason remains unknownTaskWeaver was archived; the exact cause is not established

Une maison sert pendant longtemps, puis baisse le rideau. Son cahier mentionne des moyens trop justes, sans les donner comme cause de la fermeture. Personne n’a écrit le véritable pourquoi. Il doit donc rester inconnu.TaskWeaver a existé comme framework d’agents actif, puis son dépôt a été archivé. Ses propres matériaux reconnaissent des ressources limitées, ce qui ne suffit pas à établir une chaîne causale. L’état de preuve retenu est donc : archivage certain, cause inconnue.A house serves for years, then lowers its shutter. Its book mentions scarce means without naming them as the cause. Nobody wrote the true reason. It must therefore remain unknown.TaskWeaver existed as an active agent framework before its repository was archived. Its own materials acknowledge constrained resources, which is not sufficient to establish a causal chain to that archive. Evidence state: the archive is certain, the cause is unknown.

Une salle bien équipée n’a jamais trouvé ses clientsUne adoption insuffisante a déclenché un pivot ; le pivot n’a pas empêché la dépréciationNeither menu ever filled the dining roomWeak adoption triggered a pivot; the pivot did not prevent deprecation

Une grande salle ouvre autour d’une seule spécialité. Trop peu de clients viennent pour justifier son équipement. Le patron change ensuite de carte et de clientèle. Cette seconde tentative échoue aussi, puis le rideau descend.CodeGate a reconnu explicitement une adoption faible pour sa thèse initiale de protection des assistants de code. L’équipe a pivoté vers les workflows d’agents, puis le projet a été déclaré déprécié en tant qu’expérimentation. Le constat d’adoption est explicite, et c’est lui, non une défaillance technique, qui ouvre la séquence.A large dining room opens around one speciality. Too few diners arrive to justify its equipment. The owner changes the menu and seeks another crowd. That second attempt also fails, and the shutter comes down.CodeGate stated outright that its original coding-assistant protection thesis had failed to gain adoption. The team pivoted toward agent workflows, and the project was subsequently marked deprecated as an experiment. The adoption verdict is on the record, and it — not any technical failure — is what starts the sequence.

La maison déménage, mais l’ancienne porte trompe encoreSWE-agent : un changement d’identité de repository lu comme une disparitionThe house moves while the old door still misleadsSWE-agent: a repository identity change read as disappearance

La maison change d’adresse sans manquer un seul service. Devant l’ancienne porte, un passant peut croire qu’elle est morte. Pourtant, dans la nouvelle rue, le feu n’a jamais baissé.SWE-agent a migré son identité de repository vers une autre organisation. Un watcher indexé sur l’ancienne pouvait en inférer de l’inactivité, voire une disparition, alors que le projet canonique restait actif.The house changes address without missing a single service. Someone passing the old door may declare it dead. Yet around the corner, the new kitchen never lowered its flame.SWE-agent moved repository identity. A watcher tied to the old organization could infer inactivity or disappearance while the canonical project remained active.

La porte ouvre encore, mais les fourneaux sont froidsLe projet est passé en read-only sans que le repository soit archivéThe door still opens, but the stoves are coldThe project went read-only without the repository being archived

La porte n’est pas condamnée et aucun écriteau n’annonce la fermeture. À l’intérieur, la carte reste affichée mais les fourneaux sont froids. Seule l’ancienne brigade a déclaré que l’aventure était finie.Continue a produit l’inverse d’une heuristique courante : le projet est explicitement déclaré non maintenu activement sans que le repository soit archivé. L’état réel est porté par l’annonce des mainteneurs et une posture de release finale, pas par le flag de plateforme. Un contrôle qui ne lit que le flag archive conclut ici à tort que le projet est vivant.The door is not boarded up, and no notice announces a closure. Inside, the menu remains posted while the stoves are cold. Only the former brigade has said that the venture ended.Continue inverts a common heuristic: the project is explicitly declared no longer actively maintained while the repository stays unarchived. Real status is carried by the maintainers’ announcement and a final-release posture, not by the platform flag. A check that reads only the archive flag returns a false alive verdict here.

La vieille maison sert encore, le neuf se fait en faceUn projet peut rester maintenu après le déplacement de son futur stratégiqueThe old house still serves; the new stoves are elsewhereA project can stay maintained after its strategic future moves elsewhere

La salle ouvre toujours, sert ses habitués et reçoit son entretien. Mais les patrons ont ouvert une seconde maison. C’est là qu’ils installent les nouveaux fourneaux et préparent les nouveaux plats.AutoGen est passé en maintenance tandis que ses créateurs dirigeaient le développement nouveau vers un framework successeur. Le repository existe toujours ; c’est son état stratégique qui a changé.The dining room still opens, serves regulars, and receives its upkeep. But the owners opened a second house. New stoves and new dishes now go there.AutoGen moved into maintenance while its creators steered new development toward a successor framework. The repository is still there; what changed is its strategic state.

La réception des commandesEntrées et déclencheursReceiving ordersInputs and triggers

Ce qui a été demandé, reçu, mal compris ou déclenché deux fois.Requêtes, événements, contrats d’entrée et déclenchements concurrents.What was ordered, received, misunderstood or started twice.Requests, events, input contracts and concurrent triggers.

5 fiches5 entrées5 cards5 entries

Le bon est au tableau, mais aucun commis ne l'a prisCline : des occurrences planifiées rapportées sans claimThe ticket exists, but no cook has taken itCline report separates scheduled occurrences from worker claims

Un récit décrit des commandes ajoutées au tableau et des dates qui avancent, alors qu'aucun commis ne signe la prise en charge. Le nombre de tentatives reste à zéro : inscrire la commande ne prouve pas qu'on a commencé à la préparer.Le rapport CLI 3.0.68/core 0.0.90 décrit des runs matérialisés mais queued, avec attempt_count égal à zéro et tokens de claim absents. L'avancement des dates ne démontre donc ni acquisition ni début d'exécution.The account describes new scheduled tickets and advancing dates, but no cook signs for the work and the attempt count stays at zero. A ticket on the board is not evidence that preparation began.Scheduled-run materialization is reported to proceed while worker acquisition does not: queued state, zero attempts and absent claim tokens remain. These are reported observations, not independently inspected runtime state.

Le récit à transmettre ne doit pas donner les ordres du départUn résumé de handoff est séparé de la syntaxe shellThe handover note must not become the runner's ordersExperimental handoff moves prompt text out of inline shell syntax

Le commis reçoit un récit à porter au chef suivant. Certains mots du récit peuvent être pris pour des ordres avant son départ. Une consigne corrigée sépare les deux. Elle est acceptée au bureau, encore expérimentale et non distribuée ; nous ne l'avons pas essayée.Le skill expérimental claude-handoff de mattpocock/skills remplace l'insertion directe du résumé dans le shell par un fichier temporaire lu dans un argument cité. Le changement est fusionné, mais le skill n'appartient pas au plugin distribué. Le diff a été lu sans exécution du scénario.A runner carries a handover note to the next chef. Reading parts of that note as departure orders can change what the runner does. The accepted instruction change separates those roles, but remains experimental, undistributed and untested in this review.The verified merge changes an experimental skill's shell example, not the entire handoff implementation. File-backed prompt transmission replaces inline interpolation. The maintainer explicitly excludes this skill from the published plugin.

Le nom d'une fiche pouvait envoyer le commis ailleursCodex rejette les noms de repli ressemblant à des chemins avant toute sondeA recipe name must not send the cook to another houseCodex validates fallback filenames before filesystem metadata access

Le commis attend le nom d'une fiche, mais le billet peut lui indiquer une autre maison. La nouvelle consigne refuse ce billet avant son départ. Elle est inscrite au cahier de la maison ; son application pendant le service reste à vérifier.Un correctif Codex fusionné rejette les entrées de project_doc_fallback_filenames qui présentent une syntaxe de chemin avant toute lecture de métadonnées. Le contrôle observé concerne les conventions POSIX et Windows documentées. Le bundle établit la fusion, pas la distribution ni une correction observée en production.Before sending a cook for a recipe, the chef checks whether the slip names a sheet or points outside the house. The amended house book now rejects the latter. That written change does not yet tell us what happens during service.The observed Codex change rejects path-shaped values in project_doc_fallback_filenames before probing filesystem metadata. Its evidence level is an upstream merge, with a documented POSIX/Windows scope. Deployment and field effectiveness have not been established.

Le commis allume les fourneaux avant de demander l'accordUne recette exécutable peut produire des effets avant le consentementThe recipe reaches the stove before the chef can say noCommand-capable recipes require consent before their first effect

Une recette venue d'ailleurs arrive sur le poste du commis. D'après un signalement, il commence certains gestes avant de demander l'accord du chef. Une nouvelle façon de faire est proposée, mais sa réparation n'est pas confirmée.Un signalement Goose décrit des commandes de recette lancées avant consentement, notamment via les extensions stdio et les contrôles de retry. Une proposition Desktop cherche à déplacer la décision avant la création de session. Au 16 septembre 2026, le défaut reste rapporté et la proposition ouverte, sans correction fusionnée ni efficacité observée établie.The chef receives a recipe from elsewhere and is asked to approve it after the cook has already begun. That is a reported account. A different order has been proposed, but no confirmed repair closes the story.The Goose record pairs a report of pre-consent recipe execution with an open Desktop proposal. Stdio extensions and retry checks are among the command-capable paths described. Neither a merged correction nor independent confirmation of effective remediation is established at the 16 September 2026 cutoff.

Le client signe pour un geste, la cuisine en fait un autreLe prompt de permission demandait un accord — pour la mauvaise actionThe diner signs for one move and the kitchen makes anotherThe permission prompt asked for approval — for the wrong action

Une commande arrive en plusieurs gestes annoncés d’une traite. Avant de commencer, la cuisine tend une feuille au client. Elle montre le geste anodin, tandis que le plus lourd attend derrière. Le client signe donc pour autre chose que ce qui sera fait.Sur des commandes shell composées, le prompt de permission pouvait mettre en avant un changement de répertoire anodin tandis que l’opération Git significative restait masquée derrière. L’utilisateur validait alors un libellé sans rapport avec l’autorité réellement accordée.An order arrives as several moves called in one breath. Before starting, the kitchen sends the diner a slip. It shows the harmless move while the heavier one waits behind it. The signature therefore covers something other than what will happen.With compound shell commands, the permission prompt could foreground a harmless directory change while the meaningful Git operation stayed hidden behind it. The approval then granted authority that the displayed label did not describe.

La réserveDonnées, mémoire et étatThe pantryData, memory and state

Ce qui est disponible, absent, inaccessible, périmé ou pris pour autre chose.Persistance, mémoire, cache, secrets et distinction entre absence, erreur et inconnue.What is available, missing, unreachable, stale or mistaken for something else.Persistence, memory, cache, secrets and the distinction between absence, error and unknown.

13 fiches13 entrées13 cards13 entries

Reprendre avec la recette choisie, sans conserver de vieilles clésArchon fige une politique IA par run, avec des exclusions explicitesKeep the chosen recipe while letting the keys changeArchon pins run-level AI policy without freezing credentials

Un plat reprend demain alors que le cahier de la maison a changé. La consigne acceptée garde avec lui les choix de préparation du départ. Elle ne conserve pas pour autant de vieilles clés. Le changement n'est pas livré dans les éléments examinés et nous ne l'avons pas essayé.Archon fusionne sur dev la persistance de la politique IA résolue au lancement du run. Le snapshot est restauré avant reprise, adoption et exécution différée. Aucune release de la fenêtre ni reproduction runtime n'est établie ; les credentials restent hors du gel.Tomorrow's cook should not silently replace the choices attached to yesterday's unfinished dish. An accepted change records those choices while leaving access keys free to change. It is not established as released, and we did not test it in service.The verified dev-branch merge adds versioned metadata.ai_configuration and restores resolved AI policy before later execution. Its evidence is targeted source inspection. Release delivery and independent runtime behavior remain unverified.

Reprendre le service sans oublier ni servir deux foisClaude Code : reprise durable et doubles effetsKeep the waiting orders, remember the plates already servedClaude Code separates recovery losses from duplicate effects

Le commis revient : une commande a disparu et une assiette déjà servie repart en préparation. La maison annonce plusieurs réparations. Elles n'ont pas été éprouvées ici.Claude Code annonce une série de corrections de persistance et de rejeu entre 2.1.287 et 2.1.292. Les publications sont vérifiées ; leur comportement runtime n'a pas été reproduit indépendamment.After a break, the cook needs two lists: what guests still await and what already reached their tables. The house says it repaired several mix-ups. We have not tried those repairs ourselves.Official releases describe both lost pending state and repeated MCP execution. These are distinct transition failures, with published fixes rather than independently observed recovery guarantees.

Ne pas cocher le rangement tant que les clés locales sont encore làToolHive fait échouer le teardown si la purge locale échoueDo not mark the cleanup done while local keys remainToolHive orders token cleanup before full configuration teardown

La règle acceptée le 1er octobre nettoie les clés locales avant de barrer le dernier poste du cahier. Si ce rangement échoue, le cahier attend ; retirer un seul poste garde les clés partagées sauf demande contraire.Le teardown LLM complet fusionné purge les tokens locaux avant mutation de configuration et rend l'échec fatal, pour garder la commande retryable. Une suppression partielle conserve les tokens partagés sauf demande explicite.The accepted October 1 change clears local keys before crossing the last station out of the book. Failed cleanup leaves that change pending; removing only one station normally keeps shared keys.The merged teardown path makes incomplete token cleanup an explicit failure before configuration mutation. It distinguishes full teardown from partial removal, which preserves shared tokens unless explicitly requested otherwise.

Avant de corriger le carnet, vérifier la bonne cuisine et le bon serviceEngram documente des contrôles distincts de mutation et de repriseCheck whose notebook and which service before changing the recordEngram separates project assertions, session continuation and storage validity

Le commis veut corriger une note : il doit d'abord nommer la cuisine attendue. Reprendre un service fermé demande une suite distincte, pas de rouvrir l'ancien cahier. Deux annonces décrivent ces règles et l'arrêt d'un poste devenu inutilisable. Nous ne les avons pas essayées.Engram v3 exige expected_project pour les updates/deletes d'observations HTTP/MCP et documente une continuation atomique des sessions terminées. v3.1 annonce l'arrêt borné du serveur après invalidation permanente de génération de base. Les notes sont lues, sans reproduction des comportements.A cook changing an old note must name the intended kitchen. Resuming a closed service needs a continuation rather than reopening its finished book. Two published versions describe these controls and stopping an unusable station; no independent service trial supports this account.The releases describe three distinct invariants: mutation target agreement, valid session continuation and database-generation lifecycle. They establish published claims, not end-to-end verification of every integration. Neither release's scope should be borrowed to fill the other's gaps.

Tous les classeurs doivent permettre la même copiegstack intersecte les consentements de toutes les racinesA page may be copied only when every rulebook permits itgstack takes the intersection of transcript-consent roots

Quand plusieurs classeurs donnent les permissions de copier les carnets de service, on garde seulement les pages permises par tous. Un seul refus arrête la collecte, et les listes de maisons comme les dates autorisées se resserrent ensemble.Toutes les racines de consentement sont combinées : off prévaut, allowlists et cutoffs s'intersectent. Aucun périmètre plus large d'une racine ne remplace la restriction portée par une autre.The kitchen checks every permission book and keeps only the service pages they all allow. One refusal stops collection; a more generous list or date in one book cannot overrule the narrower others.The merged policy uses the most restrictive common scope across roots, with off taking precedence. Repository allowlists and time cutoffs combine by intersection rather than permissive override.

Préparer le carnet des ustensiles avant de l'utiliser au serviceSemantic Router fusionne la fondation du sticky tool-setPrepare the utensil notebook before putting it into serviceSemantic Router lands tool-set state foundations without live selection

La maison prépare un carnet pour retrouver les ustensiles d'un même service sans les mélanger avec ceux d'un autre. Ce travail est accepté, mais personne n'a encore branché son usage dans le service courant.La phase 1 du sticky tool-set est fusionnée : modèle d'état, stockage local concurrent et résolution d'identité fiable. Aucun manager n'est attaché au dataplane et le défaut reste désactivé.The house prepares a notebook that can keep one service's utensils separate from another's. The foundation is accepted, but the working service has not been connected to use it.The merged work establishes storage and trusted-identity contracts for sticky tool sets. It does not activate live selection; there is no attached dataplane manager and the feature remains disabled by default.

Chaque cri au passe ne mérite pas une copie de tout le carnetCline SDK persiste les changements durables plutôt que les snapshots du streamEvery call across the pass need not copy the whole order bookCline SDK replaces streaming snapshots with durable team-state deltas

La livraison du 2 octobre sépare les cris de progression des vrais changements de commande. Le carnet recopie les changements toutes les trois dixièmes de seconde, inscrit immédiatement les fins et retente une inscription ratée.SDK 0.0.90 sépare chunks/heartbeats volatils et mutations durables. Seules les entités modifiées sont écrites en deltas transactionnels par batch de 300 ms, avec transitions terminales immédiates et retries d'écritures échouées annoncés.The October 2 delivery separates progress calls from real changes to an order. It records changed entries in batches three tenths of a second apart, writes completed states immediately and reports retrying failed writes.Transactional deltas replace full team-state snapshots for each stream update. Volatile chunks and heartbeats no longer drive full-state persistence; changed entities batch at 300 ms while terminal transitions bypass the delay. Failed-write retries are also announced.

Une nouvelle page ne devrait pas recopier tout le serviceGemini CLI ajoute des deltas au lieu de l'historique completA new page should not copy the whole evening againGemini CLI appends history deltas instead of repeated full snapshots

À chaque nouvelle commande, le commis ajoutait encore une copie de toute la soirée. La correction note seulement les changements : ajouter des pages ne suffit pas si chacune répète toutes les précédentes.ChatRecordingService remplace les réécritures de l'historique complet par des deltas et patchs ajoutés au journal. La forme append-only seule ne borne pas le coût si chaque entrée réembarque tout le passé.Each new order used to bring another copy of the entire evening into the notebook. The repair records changes instead; adding pages is no economy when each repeats all the earlier ones.The change addresses what is appended, not merely whether writes are append-only. Delta/patch recording avoids repeatedly persisting the full conversation history at each turn.

Montrer l'extrait et indiquer où lire la suiteCline fournit un aperçu d'outil et une récupération paginéeShow the short slip and a way to read the remaining linesCline pairs bounded tool previews with paginated retrieval

Le commis reçoit un court extrait plutôt que tout le long relevé à chaque échange. Une référence lui permet de demander les lignes utiles ; le relevé original reste dans les carnets du service.SDK 0.0.89 fournit une preview bornée des gros résultats MCP/Composio et une URI paginable par lignes. L'original reste dans l'historique et les événements, distinct de l'extrait présenté au modèle.The cook sees a short slip instead of carrying the entire long account into every exchange. A reference lets the cook request the useful lines, while the original account remains in the service records.Large MCP/Composio outputs move behind a bounded preview and line-paginated retrieval URI. Original content remains in history and events; reducing what the model receives does not mean replacing the original with the preview.

Les fiches écartées reviennent dans les mains du commisGemini CLI : des objets mémoire ignorés ou invalides restent admissibles au traitementThe cook keeps receiving sheets that were put asideGemini CLI reports expose missing terminal states for background memory artifacts

Un commis raconte qu'une fiche laissée de côté revient encore à sa prochaine lecture. Une autre, jugée inutilisable, disparaît du tableau mais rejoint toujours sa pile. Ces deux récits restent à vérifier ; aucune réparation n'est établie.Deux signalements ouverts de Gemini CLI décrivent des artefacts de fond qui ne quittent pas effectivement le traitement. Une session ignorée par Auto Memory peut être reproposée ; un patch invalide masqué par l'interface reste dans le contexte de l'extracteur. Le bundle ne fournit ni reproduction indépendante ni correction établie.The cook's next pile can contain a sheet already set aside. Another sheet disappears from the board but still reaches the workbench. These are accounts of trouble, not independently checked events, and no repair is established.The available Gemini CLI reports concern two distinct paths: skipped sessions can return to Auto Memory, and UI-hidden invalid patches can remain in extractor input. They support a lifecycle question rather than a confirmed shared implementation defect. Independent reproduction and a landed fix are not established.

Une réserve inaccessible est annoncée videChez Hermes, une source d’historique indisponible a été aplatie en résultat videA locked pantry is marked as emptyIn Hermes, an unavailable history source was flattened into an empty result

Personne ne parvient à entrer dans la réserve. Pourtant, l’ardoise du passe écrit « vide » et toute la maison la croit. Ne rien trouver et ne pas pouvoir regarder sont deux situations différentes. Ici, elles reçoivent le même mot.Chez Hermes, lorsqu’une source d’historique devenait indisponible, un résultat vide pouvait masquer l’incertitude à tous les composants en aval. L’indisponibilité et l’absence factuelle arrivaient sous la même forme, sans marqueur permettant de les séparer.Nobody can enter the pantry. Yet the board at the pass reads “empty,” and the whole house believes it. Finding nothing and being unable to look are different situations. Here, both receive the same word.In Hermes, when a history source became unavailable, an empty result could hide the uncertainty from every downstream component. Unavailability and factual absence arrived in the same shape, with no marker separating them.

La maison jette la clé dès qu’elle coinceUn échec d’authentification récupérable est devenu une suppression d’identifiantsThe house bins the pantry key after one jamA retryable login failure became credential deletion

La clé de la réserve doit parfois être refaite. Un jour, le serrurier ne répond pas et la maison jette la clé comme après un refus. Deux commis partagent aussi le même crochet. Le retardataire peut jeter la clé neuve posée par l’autre.Un signalement sur l’intégration OAuth de goose décrit un chemin de récupération destructif qui traite un échec temporaire de rafraîchissement comme une révocation définitive et efface les identifiants stockés. Avec un stockage partagé et des jetons de rafraîchissement rotatifs, un processus obsolète peut en outre effacer les identifiants qu’un autre processus vient de renouveler.The pantry key sometimes needs recutting. One day, the locksmith does not answer and the house bins the key as after a refusal. Two cooks also share one peg. The late cook can discard the fresh key left by the other.A report on goose’s OAuth integration describes a destructive recovery path that treats a temporary refresh failure as definitive revocation and clears the stored credentials. With shared storage and rotating refresh tokens, a stale process can additionally erase credentials another process has just renewed.

La page entière sort avant qu’on demande d’oublierCaviarder dans le prompt est déjà trop tardThe whole page leaves before the reader is asked to forgetRedacting inside the prompt is already too late

La maison recopie des propos du comptoir et envoie la page à un lecteur extérieur. Une ligne lui demande de taire les passages privés. Mais la page entière a déjà franchi la porte. Sa réponse peut être propre ; sa lecture ne l’était pas.Une conception d’extraction de mémoire de Gemini CLI transmettait au modèle une sélection de contenu issu de transcriptions locales, puis s’en remettait à des instructions placées dans cette même interaction pour caviarder les secrets. Ce placement protège au mieux le texte produit ensuite. Il ne protège pas la frontière que le contenu brut a déjà franchie.The house copies conversations from the counter and sends the page to an outside reader. One line asks that reader to hide private passages. But the whole page already crossed the door. The reply may be clean; the reading was not.A Gemini CLI memory-extraction design passed selected local transcript content to the model, then relied on instructions inside that same interaction to redact secrets. At best this protects the text produced afterwards. It does not protect the boundary the raw content has already crossed.

La mise en placeConfiguration et environnementThe mise en placeConfiguration and environment

Tout ce qui doit être prêt avant de commencer : produits, poste, règles et matériel.Configuration, initialisation, environnement et préconditions d’exécution.Everything that must be ready before starting: ingredients, station, rules and equipment.Configuration, initialization, environment and execution preconditions.

22 fiches22 entrées22 cards22 entries

Les mêmes ustensiles peuvent désormais servir au-delà du posteOpenCode v2 autorise les répertoires externes par défautThe same utensils can gain permission to work beyond the stationOpenCode v2 changes the external-directory default to allow

La maison choisit de ne plus demander systématiquement l'accord avant de travailler hors du poste prévu. Les ustensiles peuvent rester identiques, tandis que le commis chargé d'inspecter les lieux reçoit aussi cette permission explicite.La branche v2 retire external_directory:*→ask du défaut, laissant s'appliquer le catch-all allow. Explore autorise aussi external_directory explicitement : l'élargissement de portée vient de la politique, sans nécessiter de nouvel outil.The house deliberately drops the usual question before work outside the assigned station. No extra utensil is needed, and the cook who inspects the premises receives an explicit allowance too.Removing the default external_directory ask exposes the catch-all allow, with an explicit allowance for Explore. This is an intentional authority-policy change rather than evidence of a new tool or a vulnerability.

Le carnet rangé doit encore dire aucun ustensileHermes conserve une allowlist vide à travers les opérations cronThe stored order sheet must still allow no utensilsHermes preserves empty tool policy across cron roundtrips

Le chef remet une liste n'autorisant aucun ustensile pour un service prévu ; la ranger ne doit pas en changer le sens. La correction garde ce choix lorsqu'on crée la fiche, la modifie puis la ressort du classeur.Le correctif conserve [] dans create, update et reload des cron jobs. None reste un réglage absent, distinct de l'ensemble vide explicitement choisi, qui ne doit pas revenir comme défaut permissif.The chef supplies an empty permitted-utensil list for a planned service; filing it must not turn it into permission to use the cupboard. The repair preserves that choice when the sheet is created, amended and read back.Explicit empty policy survives cron creation, update and reload. The patch keeps [] separate from unset None so persistence cannot silently turn deny-all into a permissive default.

Le commis cuisine avec le panier qu'on lui a montréGoose résout un ensemble d'extensions cohérent par inférenceUse the same utensil basket that the cook was shownGoose binds each inference to one resolved extension set

Le chef montre un panier au commis puis lui remet ce même choix pour cuisiner, sans le changer entre les deux. Les corrections acceptées écartent les consignes qui ne correspondent pas au panier retenu.Une lease par inférence lie catalogue, prompt et dispatch au même set d'extensions, configuration, session et cwd. Les configurations discordantes sont exclues au lieu de produire une surface différente à l'exécution.The cook's instructions and the utensils handed over must come from the same chosen basket. The accepted changes reject mismatched setup rather than silently switching baskets before work begins.The merged lease resolves extension availability once for the inference and carries its configuration and execution context through prompt construction and dispatch. The claim concerns these paths, not general isolation.

Les ustensiles du comptoir ne sont pas tous montrés au commisPydantic AI filtre le catalogue selon la visibilité MCP AppThe counter's utensils do not all belong on the cook's listPydantic AI honors MCP App model visibility

Certains ustensiles sont prévus pour le comptoir, pas pour la liste du commis. Le changement accepté les retire de cette liste lorsque la consigne ne demande pas de les lui montrer.MCPToolset retire du catalogue modèle les outils dont _meta.ui.visibility exclut model. Le filtrage couvre notamment les outils app-only et les listes de visibilité vides.An utensil may belong at the counter without appearing on the cook's selection sheet. The accepted change follows the declared audience when building that sheet.The merged change applies MCP App visibility metadata to the model-facing tool catalog. UI-only exposure no longer implies model exposure through MCPToolset.

La visite de contrôle reçoit le même petit panier que le travailSkillSpector partage une allowlist d'environnement avec le probe ClaudeA readiness visit gets the same restricted basketSkillSpector aligns CLI environment filtering and Claude auth probing

La maison choisit désormais les billets permis dans le panier du commis. Même une visite pour vérifier son accès reçoit ce panier réduit. Le changement est accepté, sans nouvelle livraison établie. Les essais avec de vrais accès n'ont pas été confirmés ici.SkillSpector fusionne le passage d'une liste de préfixes sensibles à une allowlist fermée de noms de variables. Le contrôle claude auth status reçoit aussi l'environnement filtré. Le patch est vérifié, sans nouvelle release ni essais authentifiés établis.The cook no longer receives every note except a few forbidden labels. The house has accepted a permitted list, also used for a readiness visit. The change has no established new release or confirmed trial with real access in this account.The verified merge changes child-environment construction to explicit allowed names and applies it to Claude's authentication probe. Static inspection supports implementation presence. It does not establish authenticated compatibility or release delivery.

Le billet privé change de nom et passe dans le panierAider propose de limiter l'environnement des sous-processusA private note can travel under an ordinary labelAider proposes opt-in minimal child environments

Avant de confier un panier au commis, on retire les billets portant quelques noms interdits. Un billet privé sous un autre nom peut rester. Une règle propose de ne donner que les billets nécessaires. Elle n'est pas livrée ni éprouvée ici.Une PR Aider ouverte propose un environnement minimal opt-in pour les commandes enfant. Le motif déclaré est qu'une denylist de noms connus peut laisser passer des secrets .env nommés librement. Il s'agit d'une proposition examinée, sans protection livrée ni reproduction.The cook hands a helper a basket of notes after removing only familiar private labels. An unfamiliar label may carry the same private information. A proposed rule would send a short permitted set instead; no delivered or independently tested protection is established.The Aider proposal targets arbitrary-name secrets inherited by repository-controlled child commands. It contrasts minimal inheritance with known-name filtering. The available evidence is the proposal's description and open status, not a demonstrated deployment or secret-exposure incident.

La même fiche ne met pas le même ustensile en service partoutAgent Scan adapte la découverte MCP au host vérifiéMatching recipe cards do not prove matching working stationsAgent Scan gates extension discovery on host capability

Deux cuisines gardent la même fiche d'ustensiles. L'une sait les mettre à disposition ; l'autre ne suit pas forcément cette fiche. Le nouveau comptage tient compte de cette différence. Son changement est accepté, sans essai ni livraison établis ici.Agent Scan fusionne une découverte statique de providers MCP d'extensions VS Code. Elle est désactivée pour Cursor et les forks non vérifiés, dont les fichiers peuvent exister sans capacité runtime d'enregistrement. Les patches ciblés sont lus, sans tests exécutés ni release porteuse établie.Two kitchens may keep the same utensil card while only one knows how to put those utensils into service. The accepted discovery change respects that difference. We inspected selected parts, without testing the counter or establishing its release delivery.The verified merge enables extension-provider discovery specifically for VS Code. Cursor and unverified forks are excluded because filesystem similarity does not establish host registration semantics. This is a bounded static-scan change, not live inventory evidence.

Les ustensiles de la recette suivent la fiche gardée au passeDeepAgents publie des outils de skill à disponibilité contextuelleSpecial recipe utensils follow the card at the stationDeepAgents ships context-scoped skill tools

Le commis ouvre une recette et reçoit les ustensiles mis à part pour elle. Si cette lecture quitte son carnet de travail, ils sont retirés au prochain choix de travail. La maison publie cette règle ; nous ne l'avons pas essayée.DeepAgents SDK 0.7.22 révèle les outils propres au SkillsMiddleware après un read_file réussi du skill. Le registre callable est recalculé à chaque appel modèle et retire ces outils si la compaction a supprimé la lecture. Fusion, implémentation ciblée et publication sont vérifiées, sans essai runtime.Reading a recipe makes its reserved utensils available to the cook. If that reading disappears from the working notes, the next planning step withdraws those utensils. The change is published, but this review includes no service trial.The released SkillsMiddleware implementation ties its own tools to skill-read evidence retained in model context. Exposure is refreshed per model call, including withdrawal after compaction removes that evidence. Two implementation files were inspected; runtime behavior was not independently exercised.

Une consigne de serrure n'est pas une serrure poséeSemantic Router refuse les options de sécurité MCP inopérantesWriting down a lock does not install oneSemantic Router rejects unenforced MCP security settings

La fiche promet une porte protégée, mais personne n'a posé la serrure. La correction acceptée refuse d'ouvrir plutôt que de présenter cette promesse comme une protection réelle.Le Dashboard refuse les paramètres MCP OAuth, local_only et allowed_origins qu'il stockait sans appliquer. Le changement fusionné retire aussi le transport OAuth factice, sans livrer OAuth réel.The station card promises a protected entrance even though its lock was never fitted. The accepted change blocks entry under that promise instead of treating the written setting as real protection.The merged Dashboard change rejects stored security options it cannot enforce. Removing the placeholder OAuth transport is a fail-closed admission change, not delivery of OAuth support.

L'ustensile arrivé après l'ouverture doit aussi passer au contrôleAgent Framework applique la politique aux outils MCP chargés dynamiquementLate-arriving utensils still need the house checkAgent Framework labels dynamically exposed MCP tools

Le chef a vérifié les ustensiles du début de service, puis d'autres arrivent ou reviennent au poste. La correction acceptée leur applique aussi la règle locale avant de les confier au commis.Le correctif Python applique les labels de SecureMCPToolProxy aux outils redécouverts, réutilisés ou exposés progressivement. La politique est appliquée avant leur publication comme fonctions appelables.The opening check covers the first utensils, but more can arrive later or return to the station. The accepted change applies the house rule before those utensils become available to the cook too.The merged change extends local SecureMCPToolProxy policy across dynamic discovery, reuse and progressive disclosure. Callable exposure follows labeling rather than preceding it.

Refaire le compte des ustensiles sans changer les droits du commisOpenClaw annonce une réparation cron respectant les allowlists explicitesA fresh utensil count must not rewrite the cook's permission slipOpenClaw extended-stable separates cron inventory repair from authority

Le commis reçoit une vieille liste d'ustensiles pour le prochain service. La maison annonce refaire ce compte sans élargir la liste que le chef a expressément permise. Nous avons lu l'annonce, sans essayer la réparation. Elle ne concerne qu'un poste de l'ancienne série entretenue.OpenClaw 2026.8.35 annonce la réparation des snapshots automatiques d'outils cron périmés, avec conservation des allowlists explicites. La preuve est le corps officiel de release, sans lecture du code ni exécution. Le périmètre est le gateway de la ligne extended-stable d'août.An old utensil list can leave a scheduled cook working from the wrong inventory. The house says it refreshes that list while keeping the chef's explicit restrictions. This is a published repair claim for one maintained station, not a repair we tested.The gateway-only August extended-stable notes report a bounded cron snapshot repair. Explicit allowlists remain authoritative while stale automatic inventory is refreshed. No implementation inspection or runtime test independently establishes that behavior here.

Fermer notre placard ne ferme pas celui de l'autre cuisineChrome DevTools MCP ajoute une garde optionnelle sur file:Our pantry boundary does not close the other kitchen's cupboardChrome DevTools MCP adds an optional file-navigation gate

Le chef borne les placards de sa cuisine, mais le commis peut lire ceux d'une autre maison. Un changement accepté permet d'interdire cette catégorie de visite ; elle reste permise par défaut.file-navigations=false refuse file: dans new_page, navigate_page et slim navigate ; le défaut demeure true. La garde par schéma évite d'assimiler les MCP roots du serveur au filesystem d'un navigateur distant.A rule around this kitchen's cupboard cannot define the files in another kitchen's cupboard. The accepted change offers an explicit way to block those visits, while keeping them allowed by default.The new flag gates file-scheme navigation at the browser-tool boundary rather than validating a path against the MCP server's local roots. The restriction requires explicit configuration; file navigation remains enabled by default.

Le petit carnet doit vraiment arriver au posteECC publie un profil Pi limité aux skills et promptsThe smaller recipe pack must actually reach the working stationECC publishes a skills-and-prompts-only Pi profile

La livraison du 30 septembre prépare 123 fiches et 24 façons de demander leur usage, sans mécanisme ajouté ni livraison à réclamer pendant le service. Le choix est écrit à l'avance, reconstruit à l'identique et accompagné des raisons d'écarter les autres fiches.ECC 2.2.2 publie pi/core : 123 skills et 24 commandes, sans extension, hook ni téléchargement runtime. Build déterministe sur listes explicites, avec exclusions motivées plutôt qu'une copie indifférenciée de tout le dépôt.The September 30 pack selects 123 recipe cards and 24 calls for using them, without added machinery or deliveries needed during service. Its written selection can be rebuilt identically, with reasons recorded for leaving other cards out.The pi/core profile curates 123 skills and 24 commands without extensions, hooks or runtime downloads. Explicit lists and documented exclusions make the build deterministic rather than treating every repository file as portable content.

Trois postes reçoivent des règles de sortie précisesClaude Code rend vérifiable la configuration de trois workflowsThree kitchen stations get explicit delivery rulesClaude Code merges bounded workflow egress enforcement

Le 30 septembre 2026, la maison accepte des règles pour trois postes. Certaines destinations et certains ustensiles sont interdits. Personne n'a vérifié ici leur application pendant un vrai service.La fusion du 30 septembre équipe trois workflows de filtrage réseau sortant enforce et d'un contrôle statique de configuration. Le triage et le dédoublonnage interdisent certains outils web et d'édition. Les patches sont vérifiés, sans essai end-to-end.The house has accepted instructions limiting where three stations may send things and which utensils they may use. We read the change, but did not watch those stations work.The verified merge combines runner-level egress filtering, an enforced host list and security-parameter checks. Its scope is three repository workflows; no workflow was executed as part of this review.

Fermer le guichet des questions ne rend pas la réserve sûreGemini CLI ne force plus trusted dans le callback headlessClosing the question counter does not make the pantry trustedGemini CLI propagates resolved trust in headless mode

Sans guichet pour poser la question, le messager annonçait toujours que la réserve était sûre, même si le chef avait un autre avis. La correction garde l'avis déjà établi et retire seulement le guichet inutilisable.Le callback headless retournait true malgré l'état de confiance résolu en interne. Il propage désormais cette valeur au parent, tout en supprimant seulement le dialogue interactif indisponible.With no question counter available, the messenger always called the pantry trusted even when the chef's recorded decision differed. The repair keeps that decision and removes only the unavailable counter.Headless presentation no longer substitutes a constant true for resolved folder trust. The parent receives the existing decision rather than inferring approval from the lack of an interactive prompt.

La fiche de recette grossit dans six maisonsLes skills sont passés du fichier de prompt au package runtimeThe recipe card grows across six housesSkills moved from prompt file to runtime package

Dans six maisons, la fiche de recette a beaucoup grossi. La brigade doit savoir où la trouver, laquelle suivre et si elle est ouverte. Elle doit aussi connaître son origine, son nom d’usage et la place qu’elle prend sur la table.Dans les principaux harnais, les skills accumulent des sémantiques de discovery, de precedence, d’activation, de confiance, de packaging, d’invocation et de budget de contexte.Across six houses, the recipe card has grown greatly. The brigade must know where to find it, which card wins, and whether it is open. Its origin, working name, and space on the table also matter.Across the major harnesses, skills are accumulating discovery, precedence, enablement, trust, packaging, invocation and context-budget semantics.

Le bureau corrige la fiche, le poste garde l’ancienneLa source était corrigée, la copie installée restait obsolèteThe office corrects its page while the station keeps the old copySource was corrected while the installed copy stayed stale

Le chef corrige la fiche rangée dans son bureau. Au poste, le commis lit toujours une vieille photocopie. Le mauvais geste continue pendant que la maison croit la réparation terminée.Un artefact de contrôle pouvait être corrigé dans le repository source alors que la copie installée, seule chargée à l’exécution par l’agent, restait obsolète. D’où un sentiment de résolution sans changement observable.The chef corrects a page in the office binder. At the station, the cook still reads an old photocopy. The wrong move continues while the house believes the repair is finished.A control artifact could be fixed in the source repository while the installed copy the agent actually loads stayed outdated. The result was a sense of resolution with no observable change.

La maison compte l’étagère, pas les fiches au passeL’audit est passé du scan de répertoires à la lecture de l’inventaire de skills réellement injecté dans le promptThe house counts the shelf, not the cards at the passThe audit moved from directory scanning to reading the skill inventory actually injected into the prompt

Pendant longtemps, la maison compte seulement les fiches rangées sur l’étagère. Elle regarde ensuite celles vraiment posées devant le commis, avec leurs surnoms et leur ordre. Les deux comptes ne correspondent pas.L’audit de skills de Codex est passé du scan des répertoires déclarés à la lecture de l’inventaire exact injecté dans le prompt du modèle, aliases et ordre compris.For a long time, the house counts only the recipe cards on the shelf. It later inspects what actually lies before the cook, including nicknames and stacking order. The two counts disagree.Codex’s skill audit moved from scanning declared directories to reading the exact inventory injected into the model’s prompt, aliases and ordering included.

L’appel est terminé avant l’arrivée des renfortsLe contrôle était valide sur disque et absent du runtimeRoll call ends before the extra cooks arriveThe control was valid on disk and absent from the runtime

Les papiers annoncent des renforts et tout est inscrit au tableau. Pourtant, l’appel se termine avant leur arrivée et personne ne le recommence. Ils entrent une minute plus tard, mais ne reçoivent aucune commande. Leur poste est compté vide malgré leur présence.Un service de langage fourni par plugin s’est initialisé avant la fin de la découverte des plugins, laissant le runtime avec zéro serveur configuré malgré des fichiers valides sur disque. Les plugins ont été chargés quelques millisecondes plus tard, sans que la surface attendue soit reprise.The paperwork lists extra cooks and the board expects them. Yet roll call ends before they arrive, and nobody repeats it. They enter a minute later but receive no orders. Their station counts as empty while they stand there.A plugin-backed language service initialised before plugin discovery had finished, leaving the runtime with zero configured servers while the on-disk files were valid. The plugins loaded milliseconds later, and the expected surface was never picked up.

Les fiches restent cachées dans le tiroir du fondUn contournement de la découverte des skills est devenu une dépendance fragile de plusThe deepest recipe cards stay hidden in a drawerA workaround for missing skill discovery became one more fragile dependency

Des brigades rangent leurs fiches dans un tiroir caché derrière un autre. La mise en place du matin ne va jamais les chercher. Un geste spécial les récupère pendant un temps. Quand l’ouverture de la maison change, ce geste revient les mains vides.Les skills imbriqués n’étaient pas découverts, ce qui a poussé les utilisateurs à les exposer par des hooks de démarrage. Une évolution ultérieure du démarrage a cassé ce contournement alors que les fichiers de skills n’avaient pas changé. La découverte se comporte donc comme une interface versionnée du harnais, jamais documentée comme telle.Some brigades keep their cards in a drawer hidden behind another. Morning preparation never reaches them. A special opening move retrieves them for a while. When the house changes its opening routine, that move returns empty-handed.A startup-hook workaround stopped working although no skill file had changed. The workaround existed because nested skills were never picked up by runtime discovery, and it broke when a later release altered startup behaviour. Discovery plus initialisation order therefore acts as a versioned interface, documented or not.

Une façon de tenir le service voyage entre les maisonsSuperpowers : une méthodologie de skills qui franchit les frontières de harnaisA way of running service travels between housesSuperpowers: a skills methodology crossing harness boundaries

Des cuisiniers emportent une même façon de tenir le service lorsqu’ils changent de maison. Elle continue de fonctionner dans les nouvelles cuisines. Ce voyage la fait passer d’une curiosité à une pratique suivie de près.Superpowers a émergé comme méthodologie distinctive de workflows et de skills. Son influence traverse plusieurs environnements d’agents de code, ce qui justifie sa promotion de candidat à projet suivi.Cooks carry the same way of running service when they change houses. It keeps working in the new kitchens. That journey turns a curiosity into a practice worth watching closely.Superpowers emerged as a distinctive workflow-and-skills methodology. Its influence crossed individual coding-agent environments, which justified promotion from candidate to tracked project.

Des ustensiles sans propriétaire arrivent sur le billotLa synchronisation d’outils distants a créé un second control planeOwnerless utensils appear on the workbenchRemote tool synchronization created a second control plane

Le siège envoie des ustensiles qui apparaissent directement sur le billot. Certains doublent ceux que le chef a déjà choisis. Les retirer du poste ne suffit pas, car leur véritable rangement se trouve ailleurs.Dans Claude Code, des connecteurs distants de niveau compte pouvaient apparaître dans le CLI local, dupliquer des serveurs configurés localement et contourner la sémantique de suppression locale attendue par les utilisateurs.Head office sends utensils that appear directly on the workbench. Some duplicate tools already chosen by the chef. Removing them from the station is not enough because their true cupboard sits elsewhere.In Claude Code, remote account-level connectors could appear in the local CLI, duplicate locally configured servers and bypass the local removal semantics users expected.

Les plans de travailIsolation et concurrenceThe worktopsIsolation and concurrency

Ce qui se mélange lorsque plusieurs commis travaillent au même endroit.Espaces isolés, écritures concurrentes, branches et contamination d’état.What gets mixed up when several cooks work in the same place.Isolated spaces, concurrent writes, branches and state contamination.

13 fiches13 entrées13 cards13 entries

Réutiliser le résumé seulement avec le bon carnetPi-durable conditionne son cache à la tête de conversationReuse the summary only while it belongs to the same ledgerPi-durable binds derived-context reuse to the conversation head

La règle garde les notes déjà lues et ne regarde que les ajouts si le repère du carnet correspond encore. Les pages gardées ne changent pas, et chaque commis reçoit sa propre feuille de lecture.Le commit décrit range et vue dérivée par conversation, avec scan des seules entrées ajoutées si le head marker concorde. Entrées gelées et tableaux de vue propres à chaque read isolent les lectures.The documented rule keeps previously read notes and checks only additions while the ledger marker still matches. Saved pages stay unchanged, and each reader gets a separate reading sheet.Range and derived-view reuse depend on the same conversation head marker. Frozen entries and per-read view arrays preserve separation while only appended entries need scanning.

Une page impeccable peut effacer les commandes des autresECC propose de sérialiser les snapshots contre les writers périmésAn untorn page can still erase another cook's ordersECC proposes serialized snapshots to prevent stale-writer losses

Un commis remplace proprement le carnet par sa copie, sans déchirer une page, mais cette copie oublie les commandes ajoutées par les autres. La réparation proposée lui ferait relire le carnet commun avant de changer quoi que ce soit.Un rename atomique garantit un remplacement sans déchirure, pas la fraîcheur du snapshot. La PR ouverte décrit un ancien handle sql.js capable d'écraser les commits d'un autre writer et propose une relecture sérialisée avant mutation.The cook swaps in a perfectly intact copy of the order book, but it lacks the orders others added meanwhile. The proposed repair starts by rereading the shared book before making the next change.Atomic byte replacement can still publish logically stale state. The open ECC proposal targets sql.js handles that overwrite another writer's committed rows by republishing an older snapshot.

L'ancien responsable peut revenir après que la fiche a changéToolHive ajoute un CAS pour les credentials DCRThe former cook can wake up after the record has changedToolHive adds atomic DCR compare-and-set updates

Un commis vérifie qu'il tient le cahier, puis s'arrête pendant qu'un autre prend sa place. Une nouvelle méthode acceptée compare encore la fiche au moment de l'écriture pour protéger le remplaçant.ToolHive fusionne une primitive DCR compare-and-set contre les écritures d'un détenteur de lease suspendu puis périmé. Vérifier la lease avant l'écriture ne suffit pas si une relève survient entre les deux.A cook checks that the book is theirs, then pauses while someone else takes over. The accepted primitive checks the saved value at writing time so the returning cook cannot overwrite the replacement's entry merely on old authority.The new internal API couples expected-value comparison and credential mutation atomically. It targets the time-of-check/write gap left by a lease holder that resumes after expiry and replacement.

L'ancien commis ne doit plus écrire dans le cahier reprisDeepAgents réserve l'historique local et invalide les writers périmésOnly the current cook may change the shared order bookDeepAgents combines local thread reservation with writer fencing

Deux commis reprennent le même cahier et risquent d'effacer leurs notes respectives. La maison publie une règle qui réserve le cahier et vérifie qui écrit. Nous avons lu la réparation, sans la mettre à l'épreuve.DeepAgents Code 0.1.81 combine un verrou système par thread avec un jeton contrôlé lors des mutations SQLite. La réservation empêche la reprise concurrente ; le jeton rejette les écritures d'un propriétaire remplacé. Fusion et publication sont vérifiées, sans reproduction des tests.A cook takes over an order book, but the former cook still has notes to add. The published safeguard checks who owns the book now. This review examined the change rather than running a busy service with it.The released DeepAgents change protects local checkpoint history with both OS-level reservation and ownership-token checks. This addresses concurrent takeover and stale writers as separate failure paths. Source inspection confirms the mechanism's presence, not independent runtime effectiveness.

Le commis de fond garde les accords de sa propre commandeCodex lie grants et strict-review au TurnContext demandeurThe background cook keeps the permissions of the order that started itCodex binds grants and strict-review state to the requesting TurnContext

Un commis encore occupé garde le carnet d'accords et les contrôles renforcés de sa commande, même si le chef en traite déjà une autre. Les réponses du chef et l'usage des ustensiles consultent ce carnet, pas celui posé le plus récemment au passe.Les cellules de fond retiennent le TurnContext d'origine, avec ses grants et son état strict-review. Réponses d'approbation et consommateurs d'outils lisent le contexte demandeur plutôt que le tour actif plus récent.A cook still working keeps the permission book and extra checks for the order that started the work, while the chef handles another order. Approval answers and utensil use consult that book instead of whichever one most recently reached the pass.Background cells retain their originating TurnContext, including turn grants and strict-review state. Approval responses and tool consumers resolve the requesting context rather than borrowing authority from a newer active turn.

Le deuxième commis reçoit un autre carnet avant d'écrireOh My Pi sépare les sessions de writers concurrentsGive the second cook another notebook before any writingOh My Pi separates competing session writers before writes

Le premier commis qui écrit garde son carnet réservé ; le suivant reçoit un autre carnet avant d'y poser sa plume. Le nouveau porte son propre numéro et celui du carnet d'origine, pour conserver les deux histoires.Une lease OS conserve le fichier au premier writer ; un autre processus bifurque vers un sibling avant écriture. Nouveau sessionID et parentSession explicite empêchent de confondre les deux histoires.The first cook to write keeps the reserved notebook; the next gets a separate one before adding anything. The new book has its own number and records the original, preserving both histories without mixing their pages.The first writer retains the session file through an OS lease. A competing process forks to a sibling before writing, with a fresh sessionID and explicit parentSession lineage.

Réserver le menu pour l'éditer, puis afficher une page entièreGemini CLI sépare exclusion d'édition et remplacement atomiqueReserve the menu while editing, then display a complete pageGemini CLI protects edit calculation and atomic publication separately

Deux commis ne doivent pas préparer chacun leur correction depuis le même vieux menu, puis perdre celle de l'autre. Le carnet reste réservé pendant lecture et correction ; la nouvelle page n'est affichée qu'entièrement prête.Un mutex par chemin résolu couvre read-modify-write pour empêcher deux outils du même process de calculer depuis le même état ancien. Le remplacement atomique protège séparément les lecteurs contre un fichier partiel.Two cooks must not both revise the same old menu and then overwrite each other's changes. One keeps the book reserved through reading and editing, while the replacement page is displayed only when complete.The in-process path mutex serializes reading, edit calculation and writing. Atomic replacement handles another boundary: readers should not observe half-written content, which does not by itself prevent stale edit calculations.

Le retour du premier commis ne raye pas la nouvelle commandeZed lie les réponses send à la génération du tour démarréThe first cook's late reply must not erase the next orderZed fences late send results by the started turn's generation

Quand la nouvelle préparation a commencé, le retour tardif du premier commis ne doit plus effacer son bon ni y ajouter son erreur. La règle annoncée rattache chaque réponse au service qui l'a produite.La préversion protège le nettoyage du prompt et l'affichage d'erreur contre les réponses send périmées après le démarrage effectif du successeur. La génération du tour, pas la simple arrivée d'une réponse, détermine son droit de modifier la vue.Once the next preparation has started, the first cook's late reply must not erase its ticket or attach the old mistake to it. The announced rule checks which service owns that reply.The preview release guards prompt cleanup and error display against stale send responses once the successor turn actually starts. A response's generation determines whether it may mutate the current view.

Deux cuisiniers écrivent sur la même ardoiseUn contrôle sûr en exécution sérielle a corrompu son état en exécution parallèleTwo cooks share a single slateA check that was safe when runs were serial corrupted its state once runs overlapped

Au passe, une seule ardoise sert à noter la table et le plat en cours. Seul, chaque cuisinier retrouve toujours sa ligne. Dès qu’ils écrivent à deux, leurs notes se croisent. Une assiette part alors à la mauvaise table.Un contrôle conservait, pour chaque exécution, les conditions d’environnement et les données du problème dans des champs ordinaires d’une instance unique. Sous exécution parallèle, deux exécutions partageaient cette instance et pouvaient s’écraser mutuellement. Des sorties ont pu être enregistrées sous le mauvais dossier de problème.One slate at the pass records the table and dish being prepared. Alone, each cook always finds his own line. With two writers, their notes cross. A plate then leaves for the wrong table.A check stored per-run environment conditions and problem data in ordinary fields on a single shared instance. Once runs overlapped, two of them shared that instance and could overwrite each other’s values. Outputs could be recorded against the wrong problem directory.

La consigne oubliée commandait le service suivantUn verrou de débogage prévu pour une session a survécu en état global à la machineA repair note stays pinned after closingA debugging lock scoped to one session survived as machine-wide state

Une consigne de dépannage reste punaisée après la fin du service. Elle dit « la réserve du fond » sans nommer la maison. Le lendemain, dans une autre cuisine, ces mots désignent une autre réserve. Ils limitent une brigade qui n’avait rien demandé.gstack conservait dans un état global à la machine la frontière d’édition d’un mode de débogage, exprimée en chemin relatif et jamais effacée. Résolue plus tard depuis un autre répertoire de travail, cette même valeur désignait une autre zone et contraignait des sessions sans lien avec celle qui l’avait posée.A repair note remains pinned after closing time. It names a back shelf but not the kitchen it belongs to. During the next service, those words point elsewhere. They restrict a brigade that never asked for the note.gstack kept a debugging mode’s edit boundary in machine-global state, expressed as a relative path and never cleared. Resolved later from a different working directory, that single stored value designated a different area and constrained sessions unrelated to the one that set it.

Quatre maisons donnent un billot par commisL’isolation du workspace passe de discipline développeur à infrastructure géréeFour houses give each cook a separate benchWorkspace isolation is moving from developer discipline to managed infrastructure

Avec un seul commis, le billot commun suffit. À plusieurs, les préparations se mélangent. Quatre maisons en viennent donc à attribuer un plan de travail à chacun. Elles n’ont pas toutes achevé ce changement.Les worktrees et mécanismes équivalents d’isolation passent de discipline développeur à infrastructure gérée par le runtime, à mesure que l’exécution parallèle devient normale. Codex, gstack, Claude Code et Cline suivent la même trajectoire, à des niveaux de maturité différents.With one cook, a shared bench is enough. With several, preparations collide. Four houses therefore move toward one workbench per cook. They have not all completed that change.Worktrees and equivalent isolated-workspace mechanisms are moving from developer discipline into runtime-managed infrastructure as parallel execution becomes normal. Codex, gstack, Claude Code and Cline follow the same trajectory at different maturity levels.

Le plat de la première table part vers la suivanteUn état de connexion global et mutable pouvait faire livrer un message à la mauvaise sessionThe first table’s plate can reach the next partyShared mutable connection state could deliver a message to the wrong session

Une seule fiche sur le comptoir indique la table servie. Chaque nouvelle arrivée remplace cette fiche par la sienne. Le commis ne la lit qu’au départ de l’assiette. Le plat de la première table peut donc partir vers la suivante.Un état de connexion partagé et mutable permettait à une session ultérieure de remplacer la connexion globalement courante. Une notification émise ensuite pour la première session pouvait donc emprunter la connexion d’une autre.One card on the counter names the table being served. Every new party replaces it with another card. The runner reads it only when leaving the pass. A plate ordered by the first table can therefore reach the next one.Shared mutable connection state let a later session replace the globally current connection. A notification raised afterwards for the first session could then ride another session’s connection.

Plusieurs commis se disputent le même billotL’allocation de worktrees est entrée dans le chemin d’exécution, à titre expérimentalSeveral cooks collide on one shared benchWorktree allocation entered the execution path, as an experimental feature

Avec un seul commis, le billot commun ne gêne personne. À plusieurs, les préparations commencent à se mélanger. La maison essaie donc un billot par commis. Cette organisation n’est pas encore utilisée partout.L’allocation gérée de worktrees est entrée dans le chemin d’exécution des sessions CLI. L’isolation du workspace devient ainsi une capacité de première classe du harnais plutôt qu’une convention appliquée par l’utilisateur. La fonctionnalité est explicitement expérimentale ; rien n’établit qu’elle soit devenue le comportement par défaut.One cook has no trouble with a shared bench. With several cooks, preparations begin to collide. The house is therefore trying one bench per cook. Not every service uses it yet.Managed worktree allocation moved into the execution path of CLI sessions. Workspace isolation thereby becomes a harness capability rather than a convention users are expected to apply themselves. The feature is explicitly experimental, and nothing establishes it as the default.

La brigadeRôles et orchestrationThe brigadeRoles and orchestration

Qui fait quoi, qui peut arrêter le service et qui répond du résultat.Responsabilités, permissions, coordination, arbitrage et délégation.Who does what, who may stop service and who owns the result.Responsibilities, permissions, coordination, arbitration and delegation.

18 fiches18 entrées18 cards18 entries

Un simple courrier réveille le plat sans changer sa tableCodex préserve l'attribution d'un réveil queue-onlyA reminder wakes the dish without changing its tableCodex preserves existing-work attribution on queue-only wakes

Un billet vient réveiller le commis sans commander un nouveau plat ; le travail garde alors sa table et celui qui l'avait demandé. La reprise reçoit un nouveau numéro de passage, mais ne devient pas la commande du dernier messager.Le réveil queue-only conserve trigger, parent/root et agent initiateur capturés sous réservation, malgré un nouveau turn_id. Cette continuité permet au résultat délégué de rester lié au tour qui avait initié le travail.A note wakes the cook without ordering a new dish, so the work keeps its original table and requester. The resumed service gets a new round number without making the latest messenger the owner of that order.A new turn_id does not replace the causal attribution of existing sleeping work. Queue-only wake retains the reserved trigger, parent/root and initiating agent rather than assigning the delegated result to the latest mail arrival.

Lire le carnet ne donne pas le poste du commisHermes refuse la reprise ordinaire d'un worker Kanban reconnuReading the notebook does not make you its assigned cookHermes guards ordinary resume of identified Kanban workers

La marque de la brigade responsable reste sur le carnet, même lorsqu'on en fait un résumé. Si le garde reconnaît cette marque, il refuse qu'un autre commis reprenne le poste sans passer par le suivi prévu.La provenance Kanban traverse la lignée de compression. Une probe positive déclenche le refus central de reprise ordinaire avant chargement d'historique en CLI, oneshot et gateway, afin d'éviter un writer non suivi.The responsible brigade's mark stays with the notebook even after its notes are shortened. When the guard recognizes that mark, an ordinary request cannot turn its reader into an untracked replacement cook.The guard follows Kanban ownership through compression lineage and rejects ordinary resume on positive identification. It runs before history loading across CLI, oneshot and gateway rather than treating transcript access as worker ownership.

Qui arrête le commis qui appelle encore un commis ?Une décision de périmètre place la récursion sous contrôle du harnessWho stops the next cook from calling yet another cook?Recursion limits are assigned to the harness, not each skill

Des récits parlent de commis qui demandent sans cesse l'aide d'autres commis. La maison décide que la limite appartient à l'organisation de la brigade. Elle refuse de recopier cet avertissement sur chaque recette. La décision est acceptée, mais aucun arrêt réellement appliqué n'est prouvé ici.mattpocock/skills fusionne une décision qui refuse les consignes anti-récursion dans chaque skill. Le contrôle de profondeur et de capacités des sous-agents est attribué au harness. Cette PR ne modifie aucun code runtime et ne démontre aucune protection active.A recipe may tell a cook to ask for help, and the helper may ask again. The house has accepted a decision about who should limit that chain. It places responsibility with the brigade's operating rules, without proving that such a limit is already enforced.The verified merge is an architecture and maintenance decision. It assigns recursion depth and subagent tool/skill availability to the harness layer, rejecting repeated per-skill prose guards. It is not a delivered anti-loop implementation.

Retrouver les commis ne leur donne pas carte blancheGoose reprend des enfants sans prouver l'héritage de leur autoritéFinding the helpers again does not give them permissionGoose separates child recovery from inherited approval policy

Le chef inscrit les postes avant de lancer les commis ensemble ; ses fiches gardent départs, résultats et arrêts. Après une panne, la prochaine commande reprend les travaux sans fin inscrite ; l'ordre d'arrêt les annule.Sur GOOSE_STATE_MACHINE=1, delegate crée les sessions avant l'exécution parallèle des enfants, précédant le prochain appel parent. Les messages start/résultat/cancel permettent de reprendre les enfants non terminés au prochain prompt après crash ; Stop annule.The head chef sets up the helpers' stations, then sends them to work together while keeping their start, finish and stop slips. After a breakdown, the next order resumes unfinished work; a stop instruction cancels it.The merged foreground path records child lifecycle state in parent messages and resumes nonterminal children at the next prompt after a crash. Child sessions exist before parallel execution, and Stop cancels the work.

L'accord pour une recette ne suit pas son nom dans une autre maisonCLAI2 ancre l'approbation à la déclaration du projet d'origineA recipe's name cannot carry approval into another kitchenCLAI2 anchors project-plugin approval before paths can be reinterpreted

Le chef approuve une fiche dans sa maison ; une fiche du même nom ailleurs ne reçoit pas cet accord. Le correctif accepté fixe l'adresse avant de demander la permission.Le correctif CLAI2 fusionné ancre les chemins de plugins à la racine du projet avant approbation. Il empêche qu'un accord repoA soit réinterprété comme autorisation de lancer un homonyme repoB.Permission given for one kitchen's recipe does not approve a namesake in another house. The accepted repair fixes which address is meant before approval is requested.Approval binds the project-resolved declaration rather than a relative string whose meaning changes with the working directory. The merged correction targets cross-project reuse of an old path-based grant.

La liste sans ustensile ne veut pas dire tous les ustensilesCrewAI propose de fermer une allowlist explicitement videAn empty permitted list does not mean the whole cupboardCrewAI proposes deny-all for an explicitly empty allowlist

Le chef donne une liste qui ne permet aucun ustensile, mais le commis la traite comme s'il n'avait reçu aucune restriction. Une proposition ouverte corrige cette inversion.Une PR ouverte rapporte que StaticToolFilter traitait allowed_tool_names=[] comme None via truthiness, exposant tous les outils. Elle propose de distinguer ces deux états.The chef supplies a list permitting no utensils, but the cook treats it like no restriction was supplied. An open proposal addresses that inversion.The reported StaticToolFilter behavior conflates an explicitly empty allowed-tool set with an omitted one. The proposed change preserves the meaning of a supplied restriction rather than inferring unrestricted access from its emptiness.

Raccourcir le bon ne doit pas changer le oui ou le non du chefRTK conserve le verdict de permission pendant la réécritureA shorter ticket must keep the chef's original decisionRTK rejects rewrites that alter the host's permission verdict

Le commis propose un bon plus court pour gagner du temps. Si le chef répond autrement au nouveau bon, la correction acceptée garde l'original plutôt que ce gain.RTK compare original et réécriture avec les règles ordonnées propres à OpenCode. Un changement allow/ask/deny annule l'optimisation, sans ajouter de règle au fichier utilisateur.A cook tries a shorter way to pass on the order. The accepted change abandons that shortcut if it turns the chef's approval, question or refusal into a different answer.The merged RTK integration evaluates both command forms under OpenCode's own ordered policy. It forgoes token savings when the verdict differs rather than widening or editing user permissions.

Deux demandes arrivent, une seule prend la place devant le chefArchon conserve les gates non admis comme travail inachevéOne approval takes the chair; the other is still unfinishedArchon defers competing gates without completing their invocations

Deux commis demandent au chef de trancher pour le même plat. Une demande prend la place ; l'autre ne doit pas être déclarée traitée. Une correction acceptée la fera revenir à la reprise. Elle n'est pas établie comme livrée et nous n'avons pas refait les essais.Archon fusionne sur dev un conflit de pause typé qui distingue concurrence CAS et erreur de stockage. Un seul gate du même run obtient la pause et le prompt ; son concurrent reste inachevé pour le prochain resume. Tests inspectés, sans exécution ni release établie.Two approval requests arrive for the same work. Only one can occupy the waiting position, but losing that position does not finish the other request. An accepted development change preserves it for resumption, with no established release or independent trial.The verified patch gives pause-admission conflicts their own meaning. A non-admitted gate remains incomplete and its invocation runs again on resume. This is source-backed behavior in a dev merge, not independently exercised production behavior.

La note du commis ne vaut pas réponse du clientAI-DLC sépare les briefs de sous-agents des tours humainsA cook's handover note cannot answer for the guestAI-DLC excludes delegated briefs from human-turn evidence

Un commis écrit une note pour son aide. La maison pouvait la compter comme une parole du client et s'en servir pour un accord. Un correctif accepté sépare ces deux origines. Il n'a pas été essayé ici dans un vrai service.AI-DLC fusionne des filtres Copilot et Codex pour que les briefs de sous-agents ne produisent ni HUMAN_TURN ni feedback de gate. Le problème concerne la provenance de l'entrée, pas son apparence de prompt. Le patch est inspecté, sans validation live par l'auteur ni par cette veille.A handover written by a cook can arrive where the kitchen expects a guest's reply. Counting it as the guest speaking would invent authority. An accepted repair distinguishes those origins, but no live service trial is established here.The verified 2 October merge prevents identified agent-written delegation inputs from satisfying human-turn evidence. Copilot and Codex use adapter-specific filters. Code inspection and reported targeted tests do not establish corrected live-session behavior.

Des barrières baissent pour les nouvelles commandes, le chef reste présentAI-DLC change les défauts de Guard Policy pour les nouveaux intentsNew orders get fewer automatic stops while human checks remainAI-DLC defaults new non-enterprise scopes to Guard Policy off

La maison accepte de baisser certaines barrières pour neuf façons de préparer de nouvelles commandes. Une exception garde les règles strictes ; les commandes déjà ouvertes gardent leur choix. Les questions au chef et sa présence restent prévues. Nous avons lu le changement, sans l'essayer.Le 30 septembre, AI-DLC fusionne neuf changements de défaut vers off : security-patch et infra depuis strict, sept scopes depuis relaxed. express était déjà off ; enterprise demeure strict. Les intents existants conservent leur valeur enregistrée, sans preuve ici de l'enforcement de tous les chemins.The house changes the starting rules for nine kinds of new orders. One exception keeps strict rules, and work already booked retains its recorded choice. Human-presence checks and approval questions remain part of the arrangement; this review did not test it in service.The verified merge changes scope defaults for newly created work, not every existing intent. Nine defaults move to off, enterprise remains strict and express remains off. Selected code excerpts and the PR body were inspected, without runtime execution.

Des commis disponibles ne sont pas encore autorisés à goûterUn skill d'évaluation peut disposer de sous-agents sans pouvoir les utiliserHaving extra cooks does not mean the chef may call themDelegation capability does not establish evaluation authority

La recette demande plusieurs commis pour comparer les plats. Dans la cuisine décrite, il faut pourtant un accord avant de les appeler. Cette difficulté vient d'un seul récit. La réparation proposée n'est pas établie en service.Un utilisateur du projet Anthropic skills rapporte que skill-creator suppose une création de sous-agents soumise à autorisation explicite dans son harness. Le signalement n'a pas été reproduit. La proposition de fallback reste ouverte, sans livraison générale établie.An evaluation recipe calls for several cooks to compare dishes. In one reported kitchen, calling them requires permission first. This is a single account, and the proposed alternative has not been established as delivered.The reported failure is a capability-versus-permission mismatch in skill-creator's evaluation workflow. It is specific to the reporter's host requirements. Neither independent reproduction nor a generally shipped fallback is established.

Plusieurs toques peuvent écouter le même chefDes agents distincts ne prouvent pas des autorités indépendantesDifferent hats can still answer to one chefInstance identity does not establish independent governance

Trois commis signent chacun leur avis sur un plat. Ils peuvent pourtant tous répondre au même chef. Une proposition demande de noter ce lien avant de compter leurs avis comme indépendants.Une proposition A2A suggère de séparer l'identité d'instance de l'autorité qui gouverne l'agent. Le champ authority_root envisagé dans AgentCard vise le comptage de témoins indépendants. Il ne constitue pas une fonction livrée dans l'observation disponible.Several cooks may give separate answers while all taking orders from the same chef. Counting their names misses that shared control. A proposal asks for the relationship to be recorded rather than assumed away.An open A2A proposal suggests authority_root in AgentCard to distinguish agent-instance identity from governing authority. Its intended use is deciding whether witnesses count as independently governed. The available observation does not establish adoption or delivery.

Une case retirée du bon fait disparaître des postesCodex : des champs masqués pour la confidentialité ont supprimé une capacité de routageRemoving one box from the slip hides whole stationsCodex: fields hidden for privacy removed a routing capability

La maison cesse d’imprimer une colonne du bon pour alléger le ticket. Pourtant, cette case désignait le commis et le feu chargés du plat. Une fois retirée, certains postes ne peuvent plus recevoir de commande.Un changement de Codex masque par défaut des métadonnées de subagent dans le schéma visible par le modèle. Les champs retirés portaient aussi la sélection du comportement délégué : type d’agent et choix de modèle.The house stops printing one box on the order slip to keep it tidy. Yet that box named the cook and stove assigned to the dish. Once removed, some stations can no longer receive an order.A Codex change hid subagent metadata by default in the model-facing schema. The removed fields also carried delegated-behavior selection: agent type and model choice.

Le minuteur sonne et l’assiette part sans réponseUn contrôle humain s’est ouvert de lui-même à l’expiration du délaiTwo houses read a diner’s silence as yesA human gate opened by itself when its timeout expired

Certains plats exigent l’accord de la table avant de partir. Deux maisons sans lien ont lancé un minuteur en attendant la réponse. Quand il a sonné, l’assiette est partie malgré le silence. L’absence de réponse avait été prise pour un oui.Deux systèmes d’agents indépendants ont exposé la même forme dangereuse : une question adressée à un humain pouvait expirer et se résoudre en poursuite autonome de l’exécution. Le défaut n’est pas l’existence du délai, mais ce que le système en conclut.Some plates require the table’s approval before leaving. Two unrelated houses set a timer while waiting for that answer. When it rang, the plate left despite the silence. No answer had been treated as yes.Two unrelated agent systems surfaced the same dangerous shape: a question routed to a human could expire and resolve into continued autonomous execution. The defect is not the timeout itself but what the system infers from it.

Le veilleur chargé de fermer se met à envoyer des platsClaude Code : un stop hook de persistance lu comme une autorité d’exécutionThe closing watcher starts sending dishes outClaude Code: a persistence stop hook read as execution authority

Un veilleur empêche la cuisine de baisser le rideau trop tôt. Son seul pouvoir devait être de retarder la fermeture. Pourtant, il prend une demande de carte pour une commande de dîner. Personne n’avait écrit où son droit de décider s’arrêtait.Chez Claude Code, un stop hook posé pour empêcher une terminaison prématurée pouvait être interprété comme une autorité de poursuivre l’exécution, alors que l’utilisateur ne demandait qu’un plan. La persistance était l’objectif déclaré ; l’autorité d’agir n’était bornée nulle part.A watcher keeps the kitchen from lowering its shutter too early. Delaying closure should be his only power. Yet he hears a request for the written menu as an order to fire dishes. Nobody wrote where his authority ended.In Claude Code, a stop hook meant to prevent premature termination could be interpreted as authority to continue execution when the user intended a plan-only interaction. Persistence was the stated objective; the authority to act was left unbounded.

Confier un poste est devenu un métier — au passeLa délégation est devenue son propre control planeHanding out a station became its own craft — at the passDelegation became its own control plane

Confier une part du service à un autre cuisinier n’est plus un mot glissé au passage. Il faut dire qui prend quoi, sur quel feu, ce qu’il rapporte, ce qu’il montre et ce qu’il garde pour lui. Ce tableau des postes est devenu une pièce de la maison au même titre que les fourneaux. La scène reste au passe.Les subagents ne sont plus de simples prompts imbriqués. Routage, handoff, choix du modèle, visibilité, audit, messagerie et sémantique de retour forment désormais un sous-système distinct du harnais.Handing part of the service to another cook is no longer a word said in passing. Someone must set who takes what, on which range, what comes back, what is shown and what is kept quiet. That station board is now as much a fixture of the house as the stoves. The scene remains at the pass.Subagents are no longer nested prompts. Routing, handoff, model choice, visibility, audit, messaging and return semantics now form a distinct subsystem of the harness.

La confiance se donne à toute la cuisine d’un seul gesteUne seule décision de confiance couvre hooks, serveurs MCP et fichiers d’instructionsTrust covers the whole kitchen or none of itA single trust decision covers hooks, MCP servers and instruction files

Vous entrez dans une cuisine inconnue. Des consignes couvrent le mur, des outils attendent sur le billot et des caisses arrivent par la porte. Ces trois choses peuvent orienter le service sans prévenir. La maison les accepte ou les écarte donc ensemble.Le modèle de confiance de Gemini CLI désactive ensemble les hooks projet, les serveurs MCP et les fichiers d’instructions dans les dossiers non fiables. Les trois sont traités comme une même classe d’influence exécutable, et non comme trois sous-systèmes indépendants.You enter an unfamiliar kitchen. Instructions cover the wall, tools wait on the bench, and crates arrive through the back door. All three can steer service without warning. The house therefore accepts or refuses them together.Gemini CLI’s trust model disables project hooks, MCP servers and instruction files together in untrusted folders. All three are treated as one class of executable influence rather than three independent subsystems.

Autour du cuisinier, l’organisation décide du serviceLes produits d’agents convergent vers le même control plane périphériqueThe organisation around the cook decides serviceAgent products are converging on the same surrounding control plane

Mettez le meilleur cuisinier du pays dans une cuisine sans règles ni postes définis. Il fera peut-être un beau plat, mais au mauvais moment et avec les mauvais produits. Six maisons travaillent désormais surtout sur l’organisation qui l’entoure.Le signal inter-produits le plus fort n’est pas une fonctionnalité isolée. Les principaux produits d’agents convergent vers le même control plane périphérique : hooks, skills, délégation, confiance, reprise, workspaces et protocoles. La différenciation se déplace de l’accès modèle vers cette couche.Put the country’s best cook in a kitchen with no rules or fixed stations. A beautiful plate may appear at the wrong time from the wrong produce. Six houses are now concentrating on the kitchen built around that cook.The strongest cross-product signal is not an isolated feature. Major agent products are converging on the same surrounding control plane: hooks, skills, delegation, trust, recovery, workspaces and protocols. Differentiation is shifting from model access toward that layer.

Les ustensiles et les machinesOutils et infrastructureUtensils and machinesTools and infrastructure

Ce que le matériel permet, refuse ou semble avoir fait sans réellement le faire.Outils, API, runners, infrastructure et capacités réellement disponibles.What the equipment allows, refuses or appears to have done without really doing it.Tools, APIs, runners, infrastructure and capabilities actually available.

11 fiches11 entrées11 cards11 entries

L'édition signée doit arriver jusqu'au posteHermes transmet le commit approuvé à l'installation catalogueThe approved edition must be the one sent to the stationHermes carries the approved commit into catalog installation

Le bon signé indique l'édition choisie, et cette indication accompagne sa mise en place au poste. Une pile déjà présente n'est réutilisée que si son étiquette correspond ; cela ne certifie pas chaque page à l'intérieur.Le commit approuvé est transmis à l'installateur ; un arbre existant aux métadonnées catalog SHA différentes n'est pas réutilisé. Ce contrôle compare des métadonnées et ne constitue pas une attestation cryptographique des octets disque.The signed slip's chosen edition travels with the work of putting it at the station. An existing stack is reused only when its label matches, which does not independently certify every page inside.The reviewed patch forwards the approved commit and rejects reuse when stored catalog-SHA metadata disagrees. Matching metadata binds the declared revision but is not cryptographic attestation of the local bytes.

L'adresse du fournisseur ne donne pas les clés de sa réserveMCP finalise la charte de découverte Server CardsA supplier's address card is not a key to the storeroomMCP Server Cards separate connection discovery from runtime authority

Le chef trouve l'adresse d'un fournisseur dans un carnet. Cette fiche ne dit pas tout ce qu'il pourra obtenir une fois arrivé. Une règle désormais acceptée garde ces deux questions séparées. Nous avons lu le texte, sans essayer les cuisines qui pourraient l'appliquer.La charte MCP Server Cards devient Final et définit des métadonnées de connexion hors bande dans une extension optionnelle. Les primitives et capacités ne sont pas annoncées statiquement par la carte. Le texte et sa fusion sont vérifiés, sans inspection du schéma ni test d'implémentation.The cook finds a supplier on an address card. Reaching that door does not establish which utensils the cook may receive there. The accepted charter keeps location and actual access separate; we reviewed the rule rather than trying a working installation.The finalized Server Cards charter is about out-of-band connection metadata. It does not turn a catalog entry into a runtime capability inventory or authorization decision. Evidence establishes the document's status, not deployed behavior.

Interdire le crayon ne cache pas le carnetSkillSpector désactive son intégration Codex CLI pour risque de lecture hôteTaking away the pencil does not hide the notebookSkillSpector disables its Codex CLI provider before launch

Un lecteur peut recopier ce qu'il voit sans changer la page. La maison craint ce risque à un poste précis et accepte d'en bloquer le départ. Le récit du risque n'a pas été reproduit ici. Le changement est accepté, sans nouvelle livraison ni essai établis.SkillSpector fusionne une désactivation de codex_cli motivée par des lectures hôte possibles malgré read-only. Selon le mainteneur, ces données peuvent atteindre la réponse au modèle et le rapport du scanner. Le patch est vérifié, mais le scénario n'est pas reproduit indépendamment et aucune nouvelle release n'est établie.A reader can reveal a notebook's contents without writing on its pages. The house has accepted a shutdown of one particular reading station because of that concern. We inspected the change, but did not reproduce the reported disclosure path or test a release.The verified SkillSpector merge blocks its Codex CLI integration at launch boundaries. The confidentiality rationale is maintainer-reported and integration-specific. It does not establish a reproduced incident or a claim about every Codex configuration.

Le garde refuse, mais le passe entend une panneRuflo 3.51.1 corrige le code de sortie des refus pre-bashThe guard says no in a signal the pass does not obeyRuflo 3.51.1 fixes the host-facing denial exit code

Le garde reconnaît un plat interdit, mais son signal signifie seulement « mon poste a un problème » pour le passe. La livraison du 2 octobre annonce le remplacement par le signal qui retient l'assiette.Ruflo 3.51.1 annonce le passage des refus pre-bash d'exit 1 à exit 2. Claude Code interprétait le premier comme erreur de hook non bloquante ; le second porte la décision bloquante attendue.The guard spotted a forbidden plate but used the signal the pass treats as a faulty guard station. The October 2 delivery announces the stop signal that actually keeps the plate from leaving.The release changes pre-bash denials from exit 1, a non-blocking hook error to Claude Code, to the blocking exit 2 contract. Detecting denial and successfully conveying it are separate requirements.

Utiliser un poste prêté ne donne pas le droit de le fermerBrowser Use sépare création, attachement et autorité de cleanupBorrowing a station does not make it yours to closeBrowser Use defines browser ownership through the driver lifecycle

Le nouveau commis sait utiliser un poste qu'il prépare ou un poste qu'on lui prête. Le changement accepté le 2 octobre garde le poste prêté sous la responsabilité de la maison.Le driver Anthropic Browser Use fusionné le 2 octobre expose 31 actions navigateur et Bash. Il gère les navigateurs qu'il crée, tandis que les sessions attachées restent sous contrôle applicatif.The new cook can work at a station they open or one already owned by the house. The accepted October 2 driver keeps those two kinds of responsibility distinct.The merged Anthropic driver offers 31 browser/Bash actions while separating session creation from attachment. A listed action does not itself transfer lifecycle ownership of an attached browser.

Un comptoir d'essai pour suivre la commande du début à la finA2A annonce un CLI officiel pour les messages et tâchesA test counter can follow the order without another cook interpreting itA2A introduces an official scriptable task client

La maison présente un comptoir pour trouver un cuisinier, lui transmettre une commande et suivre son travail. Des fiches régulières et des signes de réussite ou d'échec doivent aider aux essais. L'annonce est vérifiée ; nous n'avons pas installé ni essayé ce comptoir.Le document officiel présente A2A CLI v1.0 : découverte d'Agent Cards, envoi de messages, suivi des tâches et streaming. JSON et codes de sortie fournissent une interface exploitable par scripts. L'annonce et son patch sont lus, sans installation ni round-trip exécuté.The house announces a test counter for finding a cook, sending an order and watching its progress. Consistent records and success-or-failure signals can support repeatable checks. We verified the announcement, not an installed or exercised counter.A2A's official announcement describes a non-agent CLI surface for discovery, messaging and task lifecycle operations. Structured output and exit status make the interface suitable for scripted tests. No interoperability exchange was run in this review.

Deux postes cessent d'inventer chacun leur bon de commandeArchon partage un contrat typé entre ses adaptateurs fournisseursTwo cooks work from one agreed set of order slipsA closed shared contract makes provider drift visible to the compiler

Deux postes lisaient les bons chacun à leur façon. La maison a intégré un jeu commun de bons, avec une réponse prévue à chaque poste. Cela ne prouve pas encore leur bon usage partout. Un bon rédigé hors de ce jeu doit toujours être vérifié à son arrivée.Archon a fusionné une union typée commune, des branches exhaustives par fournisseur et un test de conformité partagé. Ce changement remplace deux interprétations implicites d'un sous-ensemble de JSON Schema. La garantie vise les producteurs TypeScript internes ; le contournement des types dépend encore du backstop runtime.The house has adopted matching order slips for its two stations, each with an agreed way to handle every allowed choice. We have no proof of their use everywhere. Anything written outside that set still needs checking when it reaches the cooks.The merged Archon change closes the shared schema subset and requires exhaustive provider-specific handling. A common conformance test accompanies the typed representation. Compile-time protection applies to internal TypeScript producers, not to callers bypassing those types.

Les mêmes caisses passent par des portes différentesUn protocole commun n’a pas produit un modèle de sécurité communThe crates match, but every back door has its own ruleA common protocol did not produce a common security model

Dans six maisons, les livraisons arrivent dans les mêmes caisses par la même porte. Cela ne décide pas qui a le droit d’entrer. Chaque chef garde sa liste de fournisseurs et sa conduite face à une caisse abîmée.L’adoption de MCP a réduit le travail d’intégration spécifique entre les principaux harnais. La confiance, les permissions, l’injection, la découverte et l’application des règles sont restées des décisions propres à chaque produit.In six houses, deliveries arrive in matching crates through the same back door. That does not decide who may enter. Each chef keeps a supplier list and a house rule for damaged crates.MCP adoption cut the bespoke integration work between major harnesses. Trust, permissions, injection, discovery and enforcement stayed local product decisions.

L’ardoise est effacée avant l’arrivée du nouveau menuL’écriture s’est bloquée après que la destination avait déjà été tronquéeThe board is wiped before the new menu arrivesThe write hung after the destination had already been truncated

Le commis efface entièrement l’ardoise du jour avant d’attendre le nouveau menu. Cette fois, la dictée reste bloquée et n’arrive jamais. L’ancien menu a disparu, le nouveau manque, et l’ardoise reste blanche.Un deadlock shell/heredoc récurrent, observé sur un chemin Bash de macOS, a pris une conséquence plus grave. Avec redirection vers fichier, la destination pouvait être tronquée avant que le payload de remplacement soit écrit en sécurité. Le blocage cesse alors d’être bénin : il laisse la destination vide.The cook wipes the entire daily board before waiting for the new menu. This time, the dictation sticks and never arrives. The old menu is gone, the new one is missing, and the board stays blank.A recurring shell/heredoc deadlock, seen on one macOS Bash path, took on a heavier consequence. Under file redirection the destination could be truncated before the replacement payload was safely written. The hang stops being benign at that point: it leaves the destination empty.

La maison construit des passe-plats, pas de nouveaux platsLe centre de gravité s’est déplacé des fonctionnalités vers l’architecture de protocolesThe house is building hatches, not new dishesCenter of gravity shifted from end-user features to agent protocol architecture

Les clients attendent un plat de plus sur la carte. À l’arrière, la maison installe plutôt des passe-plats communs et organise le partage entre commis. Elle écrit aussi qui peut retenir une assiette. Ces travaux ont commencé, mais personne ne les dit terminés.Les branches actives et l’évolution des contrôles de Goose montrent un investissement lourd dans des agents protocolisés, l’interopérabilité et des hooks enforceables. L’effort porte sur cette couche plutôt que sur l’ajout de fonctionnalités utilisateur. Le pivot est en cours ; rien n’établit qu’il soit achevé.Guests wait for another dish on the menu. Behind the room, the house instead installs shared hatches and arranges work between cooks. It also writes who may hold a plate. The work has begun, but nobody calls it finished.Goose’s active branches and the evolution of its controls point to heavy investment in protocolized agents, interoperability and enforceable hooks. That layer, not end-user feature work, is where the effort sits. The pivot is in progress; nothing establishes that it has completed.

En ajoutant une assiette, le commis jette celle qui était làUne opération d’ajout pouvait remplacer un fichier existant sans avertissementAdding one plate sends the existing plate to the binAn add operation could replace an existing file with no warning

La commande demande d’ajouter une assiette. Le commis vérifie sa feuille au lieu de regarder la table. Une assiette occupait déjà la place ; la nouvelle la fait disparaître sans avertissement.Une primitive d’édition décrite comme un ajout pouvait remplacer silencieusement un fichier existant : son contrôle de sécurité interrogeait un état incomplet au lieu de la destination réelle, au point même où le remplacement se produit.The order asks for another plate. The cook checks a handwritten list instead of the table. A plate already sits there, and the new one silently sends it away.A file-editing primitive presented as an add could silently overwrite an existing file. Its safety check read incomplete state rather than the destination itself, at the very point where replacement happens.

La cuissonExécution et cycle de vieCookingExecution and lifecycle

Ce qui commence, dure trop longtemps, s’arrête mal ou recommence en double.Démarrage, timeout, annulation, retry, concurrence et terminaison.What starts, runs too long, stops badly or starts again twice.Startup, timeout, cancellation, retry, concurrency and termination.

12 fiches12 entrées12 cards12 entries

Le poste réservé peut avoir été repris pendant la préparationCodex revérifie la réservation avant le démarrage du réveilThe reserved station may change hands while the cook preparesCodex rechecks wake ownership after context construction

Le commis avait un poste réservé avant d'aller chercher ses consignes, mais le chef peut retirer cette réservation pendant son absence. Revenir avec les consignes ne lui donne pas le droit de rallumer le poste annulé.Une interruption pendant la construction du contexte pouvait invalider la réservation, puis start_task recréer un tour. Le correctif revérifie la propriété après cette attente, plutôt que de se fier à la validité antérieure.The cook had a station reserved before fetching the instructions, but that reservation can be cancelled or replaced while the cook is away. Returning prepared does not restore the old claim to the station.Wake preparation can outlive the reservation that authorized it. The change addresses interruption during context construction, after which stale startup could otherwise recreate a turn.

La cloche sonne pour un plat déjà serviOh My Pi ignore au peek les complétions déjà consomméesThe bell rings for a dish that was already servedOh My Pi wakes waiters only for deliverable completions

Un bon reste sur le passe après que son plat a été servi, et sa présence fait encore sonner la cloche. Le serveur revient sans rien à porter ; la correction empêche ces interruptions répétées sans nouvelle assiette.Une complétion consommée mais encore en queue pouvait interrompre wait sans message. Le peek corrigé l'ignore lorsqu'elle n'est plus livrable, évitant des réveils fondés sur la seule présence d'une entrée.A ticket left at the pass keeps ringing the bell even though its dish has already been served. The waiter returns to find nothing new; the repair excludes that spent ticket from the wake-up check.A queued row can outlive its useful delivery. The merged peek change skips consumed completions so wait is not interrupted by an entry that cannot supply a new message.

La relève du chef ne doit pas ouvrir le passeClaude Code : la permission reste requise pendant le redémarrage des hooksA change of guard cannot wave the plates throughClaude Code closes hook restart and preparation bypasses

Le chef chargé de vérifier les plats quitte son poste un instant. Les assiettes ne doivent pas partir sans contrôle. La maison annonce des réparations, sans essai de notre part.Du 2 au 6 octobre 2026, Claude Code annonce des corrections de chemins fail-open des hooks. Elles couvrent préparation impossible, remplacement du worker et erreurs après délégation du contrôle. La preuve est documentaire.When the checking chef is being replaced, the waiter still needs approval before taking a plate. The house reports changes to enforce this. We have not watched the new procedure during service.Published releases cover hook matching and serialization failures, worker restart windows, and failures after next(e). They establish announced fixes, with no independent runtime reproduction in this review.

Ouvrir le classeur relève une limite prévue pour ce serviceRuflo Console 0.33.20 : des limites temporaires se mêlent aux préférencesOpening the house rulebook can undo tonight's tighter limitReports describe Console 0.33.20 policy drift across reloads

Dans un essai rapporté, consulter les habitudes de la maison relève la limite abaissée pour le service en cours. Sauver ensuite une préférence peut aussi inscrire cette limite provisoire parmi les habitudes permanentes.Un rapport décrit RUFLO_CONSOLE_CONTROL abaissé puis relevé par le reload des préférences à l'ouverture de Settings. Sauvegarder une préférence AI peut inversement persister ce plafond temporaire comme niveau enregistré.A reported rehearsal lowers the allowance for one service, then restores a higher one when the house rulebook is opened. Saving an unrelated preference can also turn that temporary ceiling into a lasting house rule.The session cap and saved preference are reported to contaminate each other in opposite directions. Reload can lift a tighter session constraint, while saving a preference can persist the temporary cap.

Inscrire l'aide au tableau seulement après son arrivéeAgent Framework .NET retarde la publication des tâches de fondPut the helper on the board only after the station existsAgent Framework .NET publishes background metadata after creation

Le poste de l'aide ne doit pas apparaître au tableau avant d'exister. Les corrections acceptées vérifient aussi que le chef n'a pas déjà fermé le service pendant cette préparation.Les métadonnées de tâche sont publiées après création de la session enfant, puis l'état release du parent est revérifié. Les updates utilisent le même verrou pour coordonner ces transitions.The helper's station should not appear on the board before it has been set up. The accepted changes also check that the head chef has not closed the service while that was happening.The merged .NET changes defer metadata visibility until child-session creation and recheck parent release. Shared synchronization keeps publication and later updates aligned with lifecycle state.

Une assiette prête ne ferme pas toute la cuisineArchon retarde le settled tant que du travail Claude observé reste actifOne finished plate does not end every job in the kitchenArchon reconciles Claude settlement with observed background work

Un plat est prêt, mais un commis travaille encore à une préparation connue du chef. La nouvelle règle attend sa fin avant d'annoncer que tout est terminé. Elle est acceptée dans le chantier de la maison, sans livraison ni essai indépendant établis ici.Archon fusionne sur dev un contrat backgroundWork confrontant les événements terminaux à l'état runtime. Pour Claude, un résultat ne suffit plus tant que des tâches non ambiantes observées restent actives. La fusion est vérifiée ; ni release ni exécution indépendante des tests ne sont établies.The pass has a finished plate while a known task is still running behind it. The accepted change waits for that task before calling the work settled. It is a development change, with no established release or independent service trial.The verified Archon merge introduces runtime-informed completion for Claude. Settlement waits for observed non-ambient work to finish and then for a fresh idle state. The evidence is targeted source and test inspection, not field validation.

Cinq minutes sans nouvelles ne sont pas cinq minutes de cuisineMiniMax borne le premier événement et l'inactivité du fluxA silence timer does not set the meal's total cooking timeMiniMax adds first-event and idle stream watchdogs

Le chef attend d'abord la première nouvelle, puis surveille chaque silence. Chaque attente peut durer cinq minutes par défaut, pas toute la préparation. Une correction acceptée lui permet de cesser d'écouter même si le fournisseur ignore l'arrêt. Nous avons lu le changement, sans l'essayer ni établir sa livraison.MiniMax Code fusionne deux timeouts par tentative, de 300 secondes par défaut : premier événement puis inactivité. Une course avec le signal d'arrêt permet de quitter la lecture même si abort est ignoré. Le patch est lu ; tests, exécution live et release porteuse ne sont pas établis.The chef waits for the first update, then watches each quiet spell. The default is five minutes for each kind of wait, not five minutes for the whole meal. An accepted change lets the listener stop waiting; we have not tested it or established its release delivery.The verified merge adds first-event and idle watchdogs to each model attempt. Racing iterator.next against a stop signal decouples local reader exit from provider cooperation with abort. This is an inspected patch, not a reproduced runtime result.

Le cahier peut garder le plat sans rappeler le cuisinierCrewAI introduit des jobs expérimentaux sans recovery durableThe order book can survive without bringing the cook backCrewAI adds experimental jobs, not durable worker recovery

La maison accepte un essai où les commis continuent leur travail pendant la conversation et gardent les plats déjà préparés. Le carnet conservé ne sait pas pour autant faire revenir un commis après une coupure.La fondation Flow fusionnée est opt-in et expérimentale : sorties d'étapes conservées, workers indépendants des tours de conversation, updates étrangères/périmées/dupliquées/terminales rejetées et commits parent sérialisés. Les handles ne font pas partie de l'état sérialisable.The accepted experiment lets cooks keep working while conversation continues and retains their completed preparations. Saving that record does not bring a stopped cook back after a restart.The merged Flow job foundation retains step outputs and controls incoming updates while decoupling workers from conversation turns. Serialized parent commits and serializable records do not provide durable recovery of the excluded live handles.

Afficher la cuisson d'ailleurs ne donne pas la main sur son fourZed sépare terminal ACP affiché et processus local possédéShowing another kitchen's cooking does not give control of its ovenZed separates ACP terminal display from local process ownership

Le tableau reçoit les nouvelles d'une cuisine extérieure ; l'absence de four dans cette salle ne signifie pas que sa cuisson est terminée. On attend le mot de fin de la cuisine responsable, avec son résultat ou son motif d'arrêt.Le buffer ACP n'est pas un processus local détenu par Zed. Sa complétion vient de l'agent avec code ou signal ; l'absence de process local ne suffit plus à le déclarer terminé.The board shows updates from another kitchen; finding no oven in this room does not mean that the cooking has finished. The responsible kitchen must send its completion notice and outcome or stopping reason.An ACP presentation buffer does not imply a locally owned process. Agent-provided exit status preserves its code or signal instead of inferring completion from local process absence.

Le ticket dit enfin qui a retenu l’assietteL’exécution des hooks est devenue un état observable de l’agentThe ticket now says who held the plate backHook execution became observable agent state

Au passe, quelqu’un vérifie chaque assiette avant son départ. Longtemps, une assiette immobile pouvait être refusée ou simplement oubliée. Maintenant, le ticket indique si elle est partie, si elle est retenue et par qui. Le même contrôle devient enfin lisible.OpenHands expose les événements d’exécution de hooks avec des résultats distincts, succès ou blocage, via ses surfaces runtime et UI/API. Le comportement des garde-fous devient inspectable au lieu de rester implicite. Un contrôle placé sur le chemin d’action peut observer, bloquer ou décider, et le risque tient à ce que son autorité change sans être annoncée.At the pass, someone checks every plate before it leaves. For a long time, a waiting plate might be refused or merely forgotten. Now the ticket says whether it left, whether it was held, and by whom. The same check finally becomes readable.Hook execution surfaces in OpenHands as events carrying distinct success and blocked outcomes, on both the runtime and the UI/API side. Guardrail behaviour is therefore inspectable rather than implicit. A control on the action path may observe, block or decide, and the risk is that its authority shifts without being declared.

Celui qui regardait peut maintenant retenir l’assietteLes hooks de Cline sont devenus une couche de contrôle runtime à part entièreThe watcher can now hold a plate backCline’s hooks became a control layer in the runtime, not scripting bolted on

Au début, un cuisinier regardait seulement les assiettes partir. Aujourd’hui, il peut les retenir, les renvoyer ou les laisser passer. Son pouvoir a grandi. Personne n’avait écrit jusqu’où il pouvait décider.Chez Cline, les hooks sont passés d’un point d’extension scripté à une couche de contrôle runtime dédiée. L’architecture expose un mapping d’événements, des logs, des connecteurs, des timeouts d’exécution bornés et une intégration à la compaction. Observer, bloquer et décider sont trois niveaux d’autorité distincts, et rien ne les rend lisibles tant que la conception ne dit pas lequel un hook donné détient.At first, a cook merely watched plates leave. Now that cook can hold them, send them back, or wave them through. The authority grew. Nobody had written where it must end.Hooks in Cline moved out of scripting and into a dedicated runtime control layer. The architecture now carries mapped events, logs, connectors, bounded execution timeouts and compaction integration. Observing, blocking and deciding are three different authority levels, and nothing makes them legible unless the design states which one a given hook holds.

Le minuteur sonne, mais le four continueChez LangGraph, le timeout de l’appelant ne terminait pas le travail descendantThe timer rings while the oven keeps cookingIn LangGraph, the caller’s timeout did not terminate descendant work

Le minuteur sonne au passe et la commande est déclarée perdue. Pourtant, personne n’a coupé le feu au fond. La brigade relance le même plat pendant que le premier continue. Temps, produits et addition comptent alors double.Dans LangGraph, un timeout à la frontière de l’appelant ne terminait pas nécessairement le travail sous-jacent. Une tentative de remplacement pouvait alors recouvrir l’exécution d’origine, avec des effets de bord et un coût dupliqués.The timer rings at the pass and the order is declared lost. Yet nobody turned off the heat in back. The brigade starts the same dish while the first keeps cooking. Time, produce, and the bill now count twice.In LangGraph, a timeout at the caller boundary did not necessarily terminate the underlying work. A replacement attempt could then overlap the original execution, duplicating side effects and cost.

Vérifier le platValidation et preuvesChecking the dishValidation and evidence

Ce qui prouve qu’un plat a vraiment été préparé et correspond à la commande.Contrôles, reçus d’exécution, critères d’acceptation et faux succès.What proves a dish was really prepared and matches the order.Checks, execution receipts, acceptance criteria and false success.

25 fiches25 entrées25 cards25 entries

La bonne note du second plat ne libère pas le premier en attenteCodex lie une revue pendante à l'origine du score acceptéA reassuring score for the second dish cannot release the firstCodex binds pending-review release to accepted-score provenance

Le premier plat attend déjà son contrôle quand le second reçoit une note rassurante. La correction garde le numéro du plat qui a produit la note et empêche de s'en servir pour libérer cette première attente.ScoreState conserve l'index source du score accepté, distinct de sa couverture. Un score issu d'une action ultérieure ne libère plus une revue Guardian antérieure déjà en attente.The first dish is already waiting for inspection when the second receives a reassuring score. The repair remembers which dish produced that score and prevents it from releasing the earlier pending inspection.Accepted-score provenance is stored separately from coverage. A later action's score cannot release a review already pending for an earlier action merely because that score is now available.

Mettre la photo dans le pli ne prouve pas qu'elle a été vueOpenCode corrige la sérialisation des images d'outils vers xAIPutting the picture in the envelope does not prove it was seenOpenCode repairs xAI tool-result image serialization

La correction change la fiche du fournisseur direct pour que les photos des commis entrent dans le pli, avec trois formats admis. Le trajet passant par un autre comptoir garde son ancienne fiche : toutes les livraisons ne sont pas corrigées ensemble.Le chemin direct passe de @ai-sdk/xai 3.0.102 à 3.0.139, avec filtrage PNG/JPEG/WebP. La dépendance xAI d'ai-gateway-provider reste en 3.0.102, donc cette correction ne couvre pas indistinctement tous les chemins.The direct supplier's instructions change so the cooks' pictures enter the outgoing envelope, with three allowed formats. A separate counter still uses its older instructions; this does not repair every delivery route at once.The direct xAI SDK dependency is upgraded to 3.0.139 from 3.0.102 for tool-result images, filtered to PNG/JPEG/WebP. The gateway provider's separate xAI dependency remains at 3.0.102.

Expliquer la mauvaise note sans la changergstack ajoute des diagnostics sans réécrire les verdictsExplain the poor grade without quietly changing itgstack separates failure diagnostics from evaluation verdicts

La fiche distingue un mauvais plat, un mauvais plat d'essai et un contrôle défaillant, sans changer la note donnée. Elle garde les pièces observées, le service concerné et le montant connu ou inconnu ; les essais d'enquête ne comptent pas dans la dégustation notée.Les rapports ajoutent causes bornées, artefacts, sessions et cost_known sans modifier les verdicts. Défauts produit, fixtures et détecteurs sont distingués, avec diagnostics hors panels comptés.The inspection sheet separates a bad dish, a faulty rehearsal dish and a faulty check while keeping the original grade. It records the evidence, service and known or unknown bill; investigative tastings stay outside the scored tasting round.Bounded failure categories and supporting artifacts enrich the report without altering its verdict. Product, fixture and detector failures are distinguished, and diagnostic trials do not enter counted panels; session and cost-known status remain visible.

Une nouvelle livraison ne change pas tous les postesRuflo distingue train npm et plugins de contrôleA delivery label does not say which kitchen stations changedRuflo separates its npm train from marketplace plugin changes

L'annonce du 6 octobre sépare le nouveau numéro du catalogue des nouveaux équipements réellement livrés aux postes. Le pupitre propose de laisser la brigade avancer dans des limites approuvées ; cela ne prouve pas encore tout le service.Ruflo 3.53.0 distingue mise à jour de version/catalogue npm et changements de plugins marketplace. Console 0.34 ajoute contrôle et autopilot sous enveloppe approuvée, sans valider pour autant tous les chemins déployés.The October 6 notice separates a new catalogue label from the equipment actually changed at working stations. Its control desk offers continued cooking within agreed limits, with narrower evidence than a complete service trial.The release identifies separate npm and marketplace-plugin delivery tracks. Console 0.34's approved scope envelope describes the offered control boundary, not an end-to-end proof of every deployed agent path.

Le bac d'essai est plus grand que celui du vrai serviceSuperpowers : un fake de pagination peut rendre la protection impossible à testerThe practice tray is larger than the tray used in serviceSuperpowers reports an unrealistically permissive pagination fake

Le bac d'essai accepte 5000 billets, le vrai seulement 1000 : l'essai ne rencontre jamais la limite qu'il devrait vérifier. Ce récit publié le 6 octobre décrit un service du 25 septembre, pas une panne nouvelle ce jour-là.Un rapport publié le 6 octobre décrit une session du 25 septembre : le fake accepte 5000 lignes face au cap réel de 1000, empêchant le garde-fou de complétude de se déclencher. La proposition impose le cap dans le fake et teste plus d'une page.The practice tray takes 5000 tickets while the working tray holds only 1000, so the rehearsal misses the constraint. The October 6 report concerns a September 25 service, not a new incident on publication day.The reported fake models a more permissive service than production. The proposed correction names the real row cap, enforces it in the test double and exercises multi-page retrieval.

Le vieux bilan part à la poubelle avant l'arrivée du nouveauSWE-agent propose de préserver le rapport précédent en cas de collecte ambiguëDo not discard the last check sheet before its replacement arrivesSWE-agent proposes validation before evaluation-report replacement

Le chef jette le dernier bilan avant de compter les nouveaux. Il peut alors n'en trouver aucun, ou plusieurs sans savoir lequel choisir. Une réparation est proposée pour garder l'ancien bilan. Elle reste ouverte et n'a pas été essayée ici.Une PR SWE-agent ouverte rapporte une suppression prématurée de results.json dans move_sb_cli_report. Le nombre de rapports entrants serait vérifié après cette suppression. Le diagnostic et le correctif proposé ne sont pas reproduits ni établis comme livrés.The old inspection sheet is discarded before the chef checks what arrived to replace it. There may be no new sheet, or an unclear choice between several. A proposal would keep the previous one safe; no delivered or independently tested repair is established.The report describes destructive ordering in evaluation collection: the prior result is removed before a unique incoming report is confirmed. The open proposal reverses that order. Available evidence is its body and status, not independent execution evidence.

Le contrôle raté reçoit quand même le tampon bonsecurity-guidance : un échec pourrait être conservé comme revue saineThe unchecked dish gets a passed stampsecurity-guidance report links failed review to durable clean status

Le goûteur n'a pas pu entrer. Pourtant, la fiche dirait que tout est bon et empêcherait un nouvel examen. Ce récit reste non vérifié.Un signalement du 6 octobre 2026 sur security-guidance 2.0.8 avec Claude Code 2.1.286 décrit des erreurs OAuth 401 suivies d'un résultat sans vulnérabilité. L'auteur rapporte aussi un marquage du SHA comme déjà revu ; aucun essai indépendant ne le confirme.Imagine the inspector cannot get through the door, yet the dish receives a clean mark. Tomorrow's inspector skips it because of that mark. This is the concern in one unconfirmed report.The report supplies logs of authentication failure followed by a clean review result. Its author says the commit then enters the reviewed set, preventing subsequent review. Those two stages have not been independently reproduced here.

Une photo jointe ne prouve pas le plat serviOpenHands distingue média présent et comportement démontréAn attached photograph does not prove what the kitchen servedOpenHands separates media presence from behavioral evidence

La nouvelle règle exige des photos d'une cuisine réellement ouverte et un avant/après lorsque la façon de servir change. Une modification au fond de la cuisine compte aussi, même si son étiquette annonce seulement du rangement.La politique de revue exige des captures d'une Canvas réellement lancée et un avant/après pour les changements fonctionnels, backend inclus. Une étiquette chore ou l'absence de fichiers frontend ne suffit pas à les rendre non fonctionnels.The new review rule asks for pictures from a kitchen actually running and a before-and-after when service changes. Work in the back still counts, even if someone labels it ordinary tidying.Functional changes require evidence from a running Canvas and a before/after comparison, including backend changes. Declared chore status and frontend-path absence cannot determine the actual behavioral scope by themselves.

Le goûteur juge avec les pages qu'on lui a laisséesSemantic Router instrumente le contexte vu par le détecteurThe inspector can judge only the pages actually providedSemantic Router's benchmark exposes each detector context

Le goûteur reçoit un carnet raccourci et donne son avis. Le changement accepté du banc d'essai montre quelles pages il avait réellement, où la première erreur apparaît et quand il la remarque.Le benchmark fusionné expose contexte visible, premier faux pas et retard de détection par étape, après troncature aux frontières de tokens. Il peut aussi tester une affirmation avant tout appel outil.The inspector's verdict arrives after someone has shortened the evidence folder. The accepted benchmark change records what was actually supplied, where the first mistake occurred and how late it was detected.The trajectory bench adds per-step context witnesses and temporal error reporting, including pre-tool assertions. This makes context loss distinguishable from a detector that simply reacts late or misses an error.

Un paquet incomplet peut arriver avec une étiquette rassuranteVercel Skills : deux signaux distincts sur l'admission des contenusA reassuring label does not prove every recipe page arrivedVercel Skills reports separate completeness and digest-validation gaps

Un récit décrit des recettes acceptées malgré une page manquante. Un autre dit que l'étiquette du fournisseur est recopiée sans vérifier le paquet reçu. Une réparation est proposée pour le paquet incomplet. Aucun de ces récits n'a été reproduit ici, ni la réparation livrée établie.Une PR ouverte rapporte qu'un téléchargement legacy peut ignorer une erreur HTTP sur un fichier référencé. Une issue distincte décrit un hash serveur recopié dans le lock sans comparaison locale. La proposition traite la complétude ; reproduction, fusion et inclusion dans 1.7.1 ne sont pas établies.One account says a recipe packet may be accepted with a missing page. Another says the supplier's label can be copied without checking what actually arrived. An open proposal addresses the incomplete packet, but we have reproduced neither report nor established a shipped repair.The two upstream signals concern different admission checks: completeness and digest agreement with received bytes. They are not a demonstrated exploit or a single confirmed root cause. The available remediation proposal is open and bounded to incomplete downloads.

Sans réponse sur la fiche, le plat ne doit pas être déclaré réussiBrowser Use propose de rendre task_success obligatoireA blank verdict must not mean the meal succeededBrowser Use proposes an explicit required completion verdict

La fiche du commis pouvait annoncer réussi sans lui avoir demandé ce verdict, même si ses notes disaient échec. Une proposition ouverte exige désormais une réponse explicite.La PR ouverte expose task_success requis dans done structuré, distinct de data.success. Elle vise le success interne caché du schéma et à défaut true, qui pouvait déclarer réussi un travail bloqué.The cook's form could say success without asking for that judgment, even when the order notes said failure. An open proposal requires a deliberate answer instead.The proposed schema separates overall task_success from business data such as data.success. It removes the path where an unexposed internal true default can supply a success verdict by omission.

Avant de changer la cuisine, montrer ce qui a été regardéUne première admission Existing-First est raccordée, sans couvrir tous les hôtesA look around the kitchen now needs a written recordExisting-First admission is merged on selected mutation paths

Avant de remplacer une casserole, le chef veut savoir lesquelles ont été examinées. La maison a adopté ce contrôle à plusieurs postes. Cela ne prouve pas encore que chaque poste y passe, ni que chaque examen est bon.Le projet a fusionné un receipt Existing-First et des raccordements d'admission sur plusieurs chemins Father, Operator et forge. Le bundle conserve les hôtes directs non interceptés et la coordination multi-hôtes comme écarts ouverts. La fusion n'établit ni une couverture universelle ni l'efficacité terrain.The chef asks what was checked before anyone changes the kitchen equipment. Several stations now require a written record. Other stations remain outside that check, and its quality has not been independently demonstrated.The recorded change introduces an Existing-First receipt and admission checks for selected Father, Operator and forge mutations. Direct hosts outside interception and cross-host coordination remain explicit gaps. This is evidence of a merged integration, not of universal enforcement or measured operational effectiveness.

La dernière ligne du contrôle ne dit pas si le plat est bongstack : un verdict de santé lié au statut et à la couverture réelleA tidy inspection slip can hide an unfinished checkgstack health reporting preserves checker status and coverage

Imaginez un commis qui recopie seulement la fin d'une longue fiche de contrôle. Sa copie réussit, mais cela ne rend pas le plat bon. La consigne corrigée est intégrée au cahier de la maison ; son application au service reste à vérifier.Le changement gstack observé le 16 septembre 2026 empêche tail de masquer le code d'échec du vérificateur et conserve la sortie complète pour le comptage. Il rend les catégories indisponibles visibles et refuse les scores vides ou les tendances de couvertures différentes. La fusion est établie dans le matériau examiné ; le déploiement et la correction terrain ne le sont pas.At the pass, a neatly copied slip may show only the end of a long inspection. Good copying does not mean good food. The house has accepted a revised checking rule, but we have not seen it working during service.The gstack change recorded on 16 September 2026 separates the checker's exit status from successful output display. Full-output counting and explicit unavailable categories accompany safeguards against empty scores and mismatched trend coverage. The evidence establishes an upstream merge, not rollout or observed recovery in production.

La commande est cochée pendant que le commis attend un accordUn succès planifié rapporté sans preuve du résultat attenduThe ticket says done, but the cook is still waitingScheduled-task success can be reported without evidence of the intended outcome

Un commis attend l'accord du chef pour poursuivre un plat. Pourtant, la commande apparaît cochée sur le tableau. C'est ce que raconte un signalement, pas une scène que nous avons vérifiée. Aucune réparation confirmée n'accompagne ce récit.Un signalement concernant Claude Code Desktop et CLI décrit des tâches planifiées présentées comme réussies malgré une demande de permission, un blocage ou l'absence de message final. Le comportement reste rapporté : aucune reproduction indépendante ni correction fusionnée n'est établie dans les éléments arrêtés au 16 septembre 2026.A finished ticket hangs above a cook who cannot continue until the chef answers. That is the account we received, not something we witnessed. There is no confirmed repair in that account.The available Claude Code report challenges the meaning of scheduled-task success across Desktop and CLI. Permission interruptions, blocked runs and missing final messages are described under successful status, but neither independent reproduction nor a merged correction is established as of 16 September 2026.

Le gabarit compte les parts, le chef juge le repasmattpocock/skills : séparer contrôles mécaniques et revue contextuelleLet the portion guide count; keep the chef for the mealmattpocock/skills separates fixed checks from contextual review

Imaginez le chef appelé pour recompter les mêmes parts à chaque assiette. Un gabarit pourrait s'en charger, sans décider si le repas convient au client. La méthode a été acceptée ; son usage réel et ses gains restent à vérifier.Le bundle du 16 septembre décrit une modification de méthode fusionnée dans mattpocock/skills le 15 septembre 2026. Les motifs fixes de syntaxe, d'import ou d'emplacement sont orientés vers des contrôles déterministes ; le LLM conserve les jugements de cohérence et d'intention. Cette fusion ne prouve ni des contrôles déployés chez les utilisateurs, ni des économies mesurées.Picture a chef being asked to count the same portions again and again. A portion guide could do that job, leaving the chef to judge the meal. The method is accepted, but actual use and savings have not been established.A merged method change in mattpocock/skills assigns fixed syntactic, import and location rules to deterministic checks while retaining context-dependent review for the LLM. The recorded change is dated 15 September 2026 in the next day's snapshot. It establishes a method update, not downstream deployment or measured savings.

Le passe ne se contente plus d’annoncer, il refuseLes hooks passent de la notification à l’application de la politiqueThe pass no longer only calls; it can refuseHooks are moving from lifecycle notification to policy enforcement

Quelqu’un a toujours annoncé les assiettes au passe. Dans six maisons, ce poste peut désormais retenir un plat, ajouter une consigne ou noter ce qui sort. Il ne se contente plus de parler. Il décide.Dans les principaux harnais, les hooks convergent depuis de simples notifications de cycle de vie vers l’application de politique, le blocage, l’injection de contexte, la télémétrie et le contrôle de reprise. Le mouvement va dans le même sens d’un produit à l’autre.Someone has always called the plates leaving the pass. In six houses, that post can now hold a dish, add an instruction, or record what left. It no longer only speaks. It decides.Across leading harnesses, hooks are converging from lifecycle notifications toward policy enforcement, blocking, context injection, telemetry and recovery control. The same direction shows up product after product.

Un poste hérite du bon de contrôle d’un autreUn false-green corrigé, puis reproduit sur une autre dimension d’identitéOne ready slip is reused for two stationsA false green was fixed, then recurred on a different identity dimension

Un matin, quelqu’un vérifie un poste et accroche le bon « prêt pour le service ». Le lendemain, un poste ressemblant reçoit ce même bon sans contrôle. Le billot paraît identique, mais le four et les clés diffèrent.Un état de santé en cache déclarait l’environnement utilisable alors que le chemin réel échouait. Un premier correctif a traité l’incompatibilité observée ; une incompatibilité d’identité structurellement similaire a ensuite reproduit le même faux vert. Le second correctif a élargi la clé de cache vers l’exécutable et le contexte d’authentification réel.One morning, someone checks a station and hangs a ready-for-service slip. The next day, a similar station inherits that slip without inspection. The bench looks alike, but the oven and pantry keys differ.Cached health state reported a usable environment while the real path failed. A first repair closed the observed mismatch, and a structurally similar identity mismatch then reproduced the same false green. The second repair widened the cache key toward the executable and the real authentication context.

Le tableau annonce un service que personne n’a faitDes pannes sans rapport se réduisaient toutes au même succès affichéThe board says service is done when nothing leftUnrelated failures kept collapsing into the same reported success

Trois soirs, trois pannes différentes empêchent la cuisine de travailler. Pourtant, le tableau affiche chaque fois la même ligne verte. La salle ne voit que cette ligne et croit le service accompli.Pendant plus d’un an, des mécanismes de panne distincts ont pu se terminer sur un statut de sortie en succès. C’est le contrat de base de l’automatisation headless qui casse : l’appelant ne dispose d’aucun autre signal.Three nights bring three different breakdowns, and the kitchen completes nothing. The board still shows the same green line each time. The dining room trusts that line and believes service succeeded.For over a year, distinct failure mechanisms could still terminate with a success exit status. That breaks the core contract headless automation depends on, since the caller has no other signal to read.

Le silence au passe faisait partir l’assietteLa panne du contrôle de sécurité risquait de valoir permissionSilence at the pass sent the plate outA safety control’s failure risked counting as permission

Dans trois maisons, quelqu’un doit acquiescer au passe avant chaque départ. Si ce poste tombe, la conduite doit être décidée d’avance : arrêter, refuser, réessayer ou reconnaître qu’on ne sait pas.À mesure que les hooks autorisent ou bloquent effectivement des actions, la panne du hook lui-même devient une décision critique : continuer, bloquer, réessayer, ou exposer l’incertitude.In three houses, someone at the pass must nod before each plate leaves. If that station fails, the choice must already be written: stop, refuse, try again, or admit that nobody knows.As hooks come to genuinely authorize or block actions, the hook’s own failure becomes a decision in itself: continue, block, retry, or surface the uncertainty.

Le carnet presque vide se remplit soudain de croixUn garde-fou local est devenu le capteur d’une régression non mesuréeA nearly empty book suddenly fills with marksA local guardrail became the sensor for an unmeasured regression

La maison interdit une phrase au passe et marque chaque écart dans un carnet. Pendant longtemps, les pages restent presque vides. Après un changement venu d’ailleurs, les croix s’accumulent. Le carnet révèle alors que la conduite de la brigade a changé.Un stop-phrase guard construit par un utilisateur a accumulé brusquement un groupe de violations après un changement de comportement. Le hook, conçu pour l’enforcement local, s’est ainsi transformé en canari quantitatif. La rupture est mesurée par ses propres journaux, non par une instrumentation du produit.The house bans one phrase at the pass and marks every breach in a book. For a long time, its pages stay nearly empty. After a change elsewhere, marks pile up. The book now reveals that the brigade’s conduct has shifted.A user-built stop-phrase guard suddenly accumulated a cluster of violations following a behavioral change. Built for local enforcement, the hook turned into a quantitative canary. The discontinuity is measured by the guard’s own logs, not by any product instrumentation.

Deux maisons annoncent un plat jamais cuisinéUn résultat d’outil doit porter la preuve que l’outil a été exécutéTwo houses record a plate nobody cookedA tool result must carry evidence that the tool actually ran

Deux maisons présentent la même faille : une belle ligne décrit un plat que personne n’a cuisiné. Elle porte la bonne heure et le bon poste. Seul manque le ticket prouvant le geste. Une maison sérieuse garde ce ticket avec l’assiette.Deux surfaces de harnais, gstack et Claude Code, exposent la même défaillance : un texte ayant la forme d’un résultat survit alors que la commande correspondante n’a pas été exécutée. Le contrôle durable consiste à transporter l’état d’exécution à côté du résultat, jamais à le déduire d’une mise en forme assurée.Two houses show the same flaw: a polished line describes a plate nobody cooked. It carries the right time and station. Only the ticket proving the work is missing. A serious house keeps that ticket with the plate.Two harness surfaces, gstack and Claude Code, expose the same failure: result-shaped text survives even though the corresponding command never executed. The durable control carries execution state alongside the result instead of inferring it from confident formatting.

Le cahier de service dévorait toute la réserveLe second correctif a placé le contrôle à la frontière que le premier avait manquéeThe service ledger was consuming the storesThe second fix put the control at the boundary the first one missed

Le cahier de service se remplit à une vitesse folle. Un premier tri bloque certaines notes à l’entrée. D’autres changent pourtant d’étiquette en route et atteignent encore le cahier. Le second tri descend donc jusqu’à la main qui écrit la dernière ligne.Un chemin de journalisation à très fort volume a été réduit puis livré, tandis qu’un chemin d’événements transformés continuait d’écrire à travers le garde. Le correctif suivant a rapproché l’enforcement de la frontière finale de persistance.The service ledger fills at a furious pace. A first sorting step blocks some notes at the door. Others receive a fresh label along the way and still reach the book. The second sort therefore reaches the hand writing the final line.A very high-volume logging path was reduced and shipped, while a transformed-event path kept writing straight through the guard. The follow-up fix moved enforcement closer to the final persistence boundary.

Le goûteur contrôle le bol, jamais l’assiette servieLe test était vert parce qu’il ne traversait pas la couture dont dépendaient les utilisateursThe taster checks the bowl, never the served plateThe test passed because it never crossed the seam users depended on

Le bol préparé par le commis est parfait et respecte la commande. Pourtant, une consigne se perd ensuite sur le chemin vers la salle. L’assiette arrive avec un ingrédient refusé par le client.Un test au niveau helper validait la construction des arguments. Le chemin de lancement réel perdait ensuite l’option importante, en aval du point couvert. Le vert obtenu mesurait donc une confiance, pas une couverture end-to-end.The cook’s bowl is flawless and matches the order exactly. Later, an instruction disappears on the way to the dining room. The plate arrives carrying something the guest refused.A helper-level test checked how arguments were assembled. The real launch path then dropped the significant option, downstream of everything the test observed. The resulting green measured confidence, not end-to-end coverage.

Le veilleur du passe peut maintenant arrêter un platDe callbacks non bloquants au veto, puis à une politique d’échec configurableThe watcher at the pass can now refuse a plateHooks went from non-blocking observation to explicit veto, then to a configurable failure policy

L’homme posté au passe notait d’abord seulement les assiettes sorties. On lui a ensuite permis d’en retenir une. La maison a maintenant écrit ce que devient le service lorsque ce veilleur lui-même flanche.Les hooks de Goose ont d’abord observé les événements du cycle de vie sans bloquer l’exécution. PreToolUse a ensuite reçu une sémantique de blocage explicite, livrée dans le produit actif. Le comportement en cas d’échec du hook lui-même est devenu configurable, séparant refus de politique et indisponibilité du garde.The watcher at the pass once only recorded plates leaving. Later, he was allowed to hold one back. The house has now written what happens to service when that watcher himself fails.Goose hooks began as non-blocking callbacks over lifecycle events. PreToolUse later acquired explicit blocking semantics, and that behavior ships in the active product. Behavior when the hook itself fails is now configurable, separating a policy denial from an unavailable guard.

Le commis annonce une assiette qu’il n’a pas vueUne réponse assurée n’est pas un résultat de vérificationThe cook calls a plate he never saw leaveA confident reply is not a verification result

« C’est parti », annonce le commis. Il peut avoir vu l’assiette, reconnu un bruit ou simplement deviné. Le chef, lui, doit décider avec ces trois mots.Une révision de la consigne de workflow impose désormais que chaque affirmation de l’agent porte sa preuve ou une qualification explicite : mesuré, déduit ou supposé. Elle laisse aussi à l’agent les contrôles qu’il peut exécuter lui-même, au lieu de les renvoyer à l’opérateur. La modification est vérifiable dans les sources ; son effet sur le comportement réel n’a pas été mesuré ici.“Plate away,” calls the cook. He may have seen it leave, guessed from a sound, or merely hoped. The chef must decide from the same confident call.A workflow-instruction revision now requires every agent claim to carry its evidence or an explicit measured, inferred or guessed qualifier. It also puts executable checks back on the agent instead of handing them to the operator. The edit is verifiable in source; its effect on observed behaviour has not been measured here.

La salle et le clientPublication et résultat utilisateurThe dining room and guestPublication and user outcome

Ce qui est réellement servi, reçu et compris au bout du parcours.Déploiement, exposition, comportement observable et résultat réellement obtenu.What is actually served, received and understood at the end of the journey.Deployment, exposure, observable behavior and the outcome actually obtained.

4 fiches4 entrées4 cards4 entries

Le commis doit rendre son résultat à celui qui l'a demandéOpenClaw explicite le retour des résultats déléguésThe helper owes a result to the cook who askedOpenClaw documents requester-bound delegated completion

Le chef confie un plat à un aide et attend son retour. La maison annonce que ce résultat revient une fois au demandeur, sans être caché par une consigne de silence. Deux récits signalent pourtant des retours restés bloqués. Ni ces récits ni une livraison unique garantie n'ont été éprouvés ici.OpenClaw 2026.9.8 documente un retour au demandeur une fois, tandis que le travail interne doit rendre un résultat ou continuer. REPLY_SKIP et ANNOUNCE_SKIP ne masquent plus ces retours. Deux signalements non résolus qualifient ce contrat ; aucune garantie exactly-once de bout en bout n'est établie.A helper finishes the assigned preparation and owes its result to the cook who requested it. The stable notes say that return happens once and can no longer be hidden by the old silence settings. Two open reports describe stalled returns; neither the reports nor a once-only delivery guarantee was independently tested here.The stable changelog states an explicit delegation completion contract, not an observed exactly-once transport guarantee. Producer completion, requester admission and consumption remain distinct. The new reports are counter-signals, not reproduced regressions or proof that every path fails.

Les messages du commis restent dans l'ancien casierClaude Code : une adresse reprise pointe vers l'ancienne équipeThe new head chef never checks the old pigeonholeClaude Code reports describe stale teammate inbox routing

Le commis revenu écrit au chef, mais ses billets restent dans l'ancien casier. Le nouveau chef attend toujours. Ce récit n'a pas été vérifié par un essai extérieur.Un rapport du 6 octobre 2026 décrit des coéquipiers repris sur Claude Code 2.1.291/macOS conservant l'ancienne équipe. SendMessage confirmerait un envoi vers une boîte que le lead courant ne lit plus ; le signal n'est pas reproduit ici.A returning cook puts finished reports where the old head chef used to look. The replacement sees nothing, although the cook thinks the notes were sent. This remains one person's untested account.The reported failure separates successful mailbox writes from delivery to the current lead. The supplied reproduction was not run in this analysis, and the issue remained open at the evidence cutoff.

Une recette corrigée ne garantit pas l’assiette servieMerged, released, installed et observed-fixed se sont révélés être des états différentsA corrected recipe does not guarantee the served plateMerged, released, installed and observed-fixed kept turning out to be different states

Le chef corrige la recette, puis la maison imprime une nouvelle carte. Pourtant, le commis du fond travaille encore avec l’ancienne feuille. Quatre maisons ont rencontré ce même écart. Pour le client, seule l’assiette reçue montre si la correction est arrivée.Plusieurs lineages indépendantes — Codex, Archon, Claude Code, Gemini CLI — montrent que correctif source, code mergé, release, artefact installé et récupération observée sur le terrain ne se réduisent pas à une seule étiquette « fixed ». Atteindre l’un de ces états n’entraîne pas d’atteindre le suivant.The chef corrects the recipe, and the house prints a new menu. Yet the cook at the back still follows the old sheet. Four houses met this same gap. For the diner, only the received plate shows whether the correction arrived.Several independent lineages — Codex, Archon, Claude Code, Gemini CLI — show that a source fix, merged code, a release, an installed artifact and observed field recovery do not collapse into a single “fixed” label. Reaching any one of these states does not entail reaching the next.

La cuisine coche un plat que le client ne reçoit jamaisTravail terminé côté producteur, résultat jamais reçu côté utilisateurThe kitchen ticks off a plate the diner never receivesWork completed on the producer side, result never received by the user

Le plat est prêt et parfaitement dressé au passe. La cuisine coche donc la commande comme terminée. Pourtant, le client ne reçoit rien. Quelque chose s’est arrêté entre le passe et sa table.La complétion interne pouvait être vraie alors que le résultat final n’atteignait jamais l’utilisateur. Le cas expose generated, persisted, queued, sent et received comme cinq états distincts, qu’un seul drapeau de complétion confondait.The plate is ready and perfectly dressed at the pass. The kitchen therefore ticks the order as finished. Yet the diner receives nothing. Something stopped between the pass and the table.Internal completion could be true while the final result never reached the user. The case exposes generated, persisted, queued, sent and received as five distinct states that a single completion flag conflated.

La caisseCoûts, quotas et consommationThe tillCosts, quotas and consumption

Ce que le service consomme, compte deux fois ou laisse filer sans le voir.Budget, jetons, ressources, quotas, facturation et consommation dupliquée.What service consumes, counts twice or lets escape unnoticed.Budget, tokens, resources, quotas, billing and duplicated consumption.

5 fiches5 entrées5 cards5 entries

Le commis arrêté à la limite ne doit pas repartir tout seulOh My Pi 18.6.3 bloque les retries après annulation de budgetThe cook stopped at the spending limit must not restart aloneOh My Pi 18.6.3 blocks automatic retries after budget cancellation

Un ancien récit décrivait un commis annoncé arrêté à la limite de dépense, mais qui continuait à réclamer du travail. La livraison du 6 octobre annonce que ces nouvelles tentatives automatiques cessent après l'arrêt.Le rapport antérieur décrivait un enfant cancelled mais encore en boucle de requêtes. La release 18.6.3 du 6 octobre annonce l'arrêt des retries automatiques après annulation de budget.The earlier account described a helper marked stopped at the spending limit who nevertheless kept requesting more work. The October 6 delivery announces that automatic attempts stop after that cancellation.The October 6 release 18.6.3 announcement addresses a subagent reported cancelled while still issuing requests. Automatic retry must not recreate active execution after the budget-stop notification.

Le plat refait est facturé une seconde foisSWE-agent : les retries transforment un appel modèle en multiplicateur de coût cachéEvery remade plate is rung up againSWE-agent: retries turn one model call into a hidden cost multiplier

Un plat renvoyé aux fourneaux est compté deux fois à la caisse, comme si deux clients l’avaient commandé. Le plafond de dépense ne voit que la première addition. L’écart grandit donc entre la somme annoncée et celle réellement payée.Une famille de problèmes de contrôle des coûts montre comment retries, sélection de modèle et exceptions de budget avalées font diverger limites nominales et dépense réelle chez SWE-agent.A plate sent back to the stoves is rung up twice, as though two diners ordered it. The spending ceiling sees only the first bill. The stated cost therefore drifts away from what the house truly pays.A cluster of cost-control problems in SWE-agent showed how retries, model selection and swallowed budget exceptions can make nominal limits diverge from real spend.

La réserve garde une copie entière après chaque changementDes snapshots complets append-only sans rétention bornée peuvent saturer le stockageThe pantry keeps a full copy after every changeUnbounded append-only full snapshots can exhaust storage

À chaque correction d’une commande, la brigade range une nouvelle boîte complète sans jeter l’ancienne. Deux réserves décrites dans le signalement finissent près de 13 Go. Quand les étagères sont pleines, le service devient inutilisable. Aucun remède livré n’est établi dans les éléments observés.Une issue OpenCode rapporte deux bases proches de 13 Go, dominées par des snapshots complets `message.updated` conservés sans TTL, compactage ni plafond. Le remplissage du disque peut rendre une instance inutilisable. L’issue est ouverte dans le bundle observé et aucune correction fusionnée n’y est établie.Every time an order changes, the brigade stores another complete box and keeps the old one too. Two reported pantries grow to roughly 13 GB. When the shelves fill, service becomes unusable. The observed material establishes no shipped remedy.An OpenCode issue reports two databases near 13 GB, dominated by complete `message.updated` snapshots retained without TTL, compaction, or a cap. Disk exhaustion can make a persistent instance unusable. The observed bundle shows the issue open and establishes no merged fix.

Le grand cahier finit par avaler le serviceLa télémétrie construite pour expliquer l’agent est devenue la panne de ressourcesThe great ledger eventually swallows serviceTelemetry built to explain the agent became the resource failure

La maison veut connaître chaque geste accompli à chaque poste. Tout finit donc dans un grand cahier qui ne se vide jamais. Bientôt, écrire demande plus de place et de bras que cuisiner. Plusieurs allégements sont nécessaires, car le premier ne suffit pas.Une télémétrie persistante a généré assez de churn local pour que l’observabilité devienne elle-même un problème de performance et de stockage. Plusieurs vagues de réduction ont été nécessaires, la première n’ayant pas contenu le volume.The house wants to know every move made at every station. Everything therefore enters a ledger that never clears. Soon, writing requires more room and hands than cooking. Several reductions are needed because the first is not enough.Persistent telemetry generated enough local churn that observability turned into a performance and storage problem in its own right. Reduction took several rounds; the first pass did not contain the volume.

Les fiches de recettes mangent tout le tableauLe catalogue de skills est devenu assez large pour exiger un budget de contexteRecipe cards consume the whole service boardThe skill catalog grew large enough to need a context budget

Chaque nouvelle recette réclame une ligne sur le tableau de la brigade. Le tableau, lui, ne grandit pas. À force, le service du soir n’a plus de place. Et une fiche affichée ne prouve pas qu’un commis l’a lue ou suivie.Le système de skills de Codex a évolué vers un ordre de discovery explicite, des sémantiques de confiance, des toggles, des watchers et des contraintes de budget de prompt. Un catalogue de skills est donc traité comme une ressource runtime et non comme un ensemble de fragments de prompt. La présence d’un skill au catalogue n’établit ni son chargement, ni sa visibilité, ni son application.Every new recipe asks for a line on the brigade’s board. The board never grows. Eventually, tonight’s service has no room left. A posted card still proves nothing about whether a cook read or followed it.Codex’s skill system moved toward explicit discovery ordering, trust semantics, toggles, watchers and prompt-budget constraints. A skill catalog is consequently handled as a runtime resource rather than a pile of prompt fragments. Presence in the catalog establishes neither loading, nor visibility, nor that the skill was followed.

La fermeture et la repriseAnnulation et récupérationClosing and reopeningCancellation and recovery

Comment arrêter proprement, nettoyer, revenir en arrière ou reprendre demain.Cleanup, rollback, restauration, reprise et gestion des travaux orphelins.How to stop cleanly, tidy up, go back or resume tomorrow.Cleanup, rollback, restoration, resumption and orphaned work management.

19 fiches19 entrées19 cards19 entries

Le carnet demandé manque ; un carnet vide ne le remplace pasOh My Pi refuse une cible absente pour --resume <path>An empty notebook cannot stand in for the one the chef requestedOh My Pi rejects a missing explicit resume target

Le chef demande de reprendre un carnet précis, mais son nom comporte une faute et personne ne le trouve. La correction empêche de poser un carnet vide à sa place tout en annonçant que le service reprend.Le chemin --resume <path> pouvait créer silencieusement une session vide quand le fichier demandé manquait. Le correctif fusionné fait remonter l'erreur au lieu de présenter ce nouveau départ comme une reprise.The chef names a particular notebook to continue, but a typo leaves the requested notebook missing. The repair prevents handing over a blank book while claiming the old service has resumed.An explicit missing session path no longer falls back to a fresh empty session. The merged change preserves the caller's request for continuity by reporting that the target could not be found.

Aucun nouveau ticket, mais des notes encore à reprendreLe SDK Agents conserve l'historique différé des reprises d'approbationNo new order does not mean the held notes are settledAgents SDK retains deferred approval history across resumes

Des notes de commande attendent l'accord du chef. Après une interruption, elles doivent revenir même si aucun nouveau ticket n'arrive. Une réparation acceptée décrit cette conservation et leur reprise finale. Nous n'avons pas essayé la réparation, qui n'est pas établie comme distribuée.Une PR fusionnée du SDK Agents Python traite l'historique différé des approbations et les appels d'outil orphelins décrits lors de reprises. Les éléments retenus traversent sérialisation, reprise détachée et approbations partielles. La description est vérifiée, sans inspection complète du patch, tests reproduits ou publication établie.The chef has held some order notes while deciding. After work resumes, those notes still need an outcome even if nothing new arrives. An accepted repair describes keeping them through the interruption; we have not tested it or established its distribution.The merged Agents SDK proposal preserves held history across serialized retries and approval-resume paths. Its stated target includes orphaned tool calls around guardrails and custom tool behavior. Evidence is the verified merge and primary description, not independent runtime validation.

Reprendre le plat avec sa bonne fiche de contrôleDeepAgents lie la reprise au contexte de hooks attenduThe paused dish still needs its checking instructionsDeepAgents records hook expectations for resumed turns

Un plat attend après une pause. Avant de reprendre, le commis doit retrouver la fiche de contrôle prévue pour cette préparation. La maison publie cette protection ; nous ne l'avons pas essayée.DeepAgents Code 0.1.81 publie la vérification du contexte de hooks attendu à la reprise. Le patch fusionné enregistre le snapshot et les événements dès l'entrée du tour. La lecture établit le changement, sans exécution des tests.The cook returns to a half-finished order. Its checking instructions must still be there before work continues. The house has published this safeguard, but we have not tried it during service.The verified patch and official release establish a per-turn hook-context gate in DeepAgents Code 0.1.81. Expected hooks and their event set are checkpointed at turn entry. Test code was inspected, not run.

Écrire interrompu sur le ticket ne commande pas un second platPydantic AI répare les appels interrompus avant un nouveau promptMarking a ticket interrupted does not order the dish againPydantic AI closes interrupted history before explicit prompted resume

Le chef reprend avec une nouvelle consigne et retrouve un ticket sans réponse. La correction acceptée ajoute la mention interrompu avant de continuer, sans commander ce plat une seconde fois.Le correctif fusionné ajoute des résultats synthétiques interrupted aux appels sans réponse avant le nouveau prompt de delegate_task(resume=...). Ce chemin répare l'historique sans rejouer les appels concernés.A fresh instruction arrives while an old ticket still lacks a reply. The accepted change marks that ticket interrupted before continuing, instead of placing the same order again on this path.The merged repair pairs outstanding tool calls with explicit synthetic interruption results during prompted subagent resume. It repairs conversation structure without turning missing output into automatic re-execution.

Changer le numéro du service ne rend pas le plat déjà fait nouveauPydantic AI rattache Memory et Planning aux opérations durablesA new service number does not make an old dish unpreparedPydantic AI reuses recorded operations across durable forks

Un service repris reçoit un nouveau numéro et risque de refaire une note déjà ajoutée. Les corrections acceptées retrouvent les gestes enregistrés au lieu de croire que ce nouveau numéro désigne tout un nouveau travail.Une fork DBOS changeait la clé run/tool et pouvait répéter un append Memory. Les corrections fusionnées enregistrent chaque appel Memory comme opération durable et réutilisent les steps existants ; Planning enregistre aussi ses appels de store et conserve les IDs persistés.Giving the resumed service a new number can make the kitchen add the same note again. The accepted changes use the recorded work instead of treating the new number as proof that everything still needs doing.The merged Memory change addresses effect identity across DBOS forks, while Planning records store calls and their actual persisted IDs. A run-derived idempotency key cannot substitute for the engine's existing operation record when the run identity changes.

Copier l'ancienne fiche avant de la corrigerLangGraph crée le fork avant les écritures de replayCopy the old recipe before changing the shared pageLangGraph isolates replayed checkpoints before writing

Plusieurs préparations suivent la même ancienne fiche ; la corriger sur place peut les mélanger. Les correctifs annoncés créent d'abord une copie propre à la préparation reprise.Les correctifs LangGraph isolent un update/replay d'ancien checkpoint en créant le fork avant toute écriture et en snapshotant les DeltaChannels. Ils empêchent ainsi les nouvelles écritures de viser l'historique partagé par d'autres descendants, selon les sources lues.Other dishes still depend on the old recipe page when a cook returns to change it. The documented repair makes the resumed preparation's own copy before adding any new notes.The merged changes move fork creation ahead of update/replay writes and snapshot DeltaChannels. Their target is cross-descendant contamination from an older checkpoint, not conversation/filesystem rewind in general.

Partir sans attendre ne doit pas faire jeter la clé neuvePi conserve le résultat d'un refresh OAuth déjà engagéLeaving the waiting line must not discard the new pantry keyPi preserves an OAuth rotation already in progress

Le chef cesse d'attendre alors que le serrurier a commencé à remplacer la clé de réserve ; l'ancienne peut déjà ne plus ouvrir. La correction conserve la nouvelle clé au lieu de la jeter avec la demande abandonnée.Le refresh commencé peut déjà avoir invalidé l'ancien token. Le patch sépare l'annulation de l'appelant de la clôture de cette rotation afin de conserver son résultat valide plutôt que de l'abandonner.The chef stops waiting after the locksmith has begun replacing the pantry key, and the old key may already be useless. The repair keeps the new key rather than throwing it away with the cancelled request.Cancellation of the caller is separated from completion of an engaged token rotation. Once refresh may have invalidated the old credential, discarding its result can lose the only new valid identity.

Le reçu ne part pas, mais le plat a déjà été préparéAgent Framework : un re-poll peut répéter des outils déjà exécutésThe receipt failed to leave, but the cook already made the dishAgent Framework: reported duplicate effects after failed poll submission

Dans l'exercice publié, le commis prépare le plat puis échoue à faire partir son reçu. Redemander l'état avec le même billet lui fait préparer encore ce plat ; nous n'avons pas rejoué l'exercice.Le rapport Python décrit un poll qui exécute les fonctions puis échoue en soumettant leurs résultats. Le token resté sur la requête d'outils peut faire répéter les effets au re-poll ; le repro upstream n'est pas exécuté ici.The published rehearsal has a cook finish a dish before its receipt fails to be sent. Asking again with the old slip makes the dish get prepared again; we did not repeat that rehearsal.The reported fault separates successful tool execution from failed result submission. Reusing a continuation token that still denotes the tool request can replay the functions rather than merely retry the submission.

Le plat peut être prêt avant que son reçu arriveLangGraph : un résultat non checkpointé peut cacher un effet déjà commisThe dish may be finished before its receipt arrivesLangGraph resume can repeat an effect whose response was lost

Dans l'exercice publié, le fournisseur prépare le plat, mais son reçu n'arrive pas à temps. Le même ticket fait préparer ce plat deux fois ; nous n'avons pas essayé cet exercice.Le repro local publié sur LangGraph 1.2.12 fait commettre une API simulée avant timeout, puis invoke(None) rejoue le nœud outil : deux effets pour un tool_call_id. Il n'est pas exécuté dans cette analyse.The published rehearsal leaves a finished dish waiting while the kitchen never gets its receipt in time. Sending the ticket again makes the supplier prepare that same dish twice; we did not try the rehearsal ourselves.The reported simulation separates remote commit from local result persistence. Missing checkpoint output cannot establish that the remote operation did nothing.

Le carnet distingue le geste essayé de la recette seulement luegstack qualifie la provenance des étapes à reprendreThe notebook distinguishes a tried method from a recipe merely readgstack preserves the provenance of remaining checkpoint steps

Pour chaque geste restant, le carnet précise si la méthode a été essayée, lue ou seulement imaginée, et si le poste visé a été vérifié. Au retour, la brigade contrôle d'abord ce qui reste incertain, sans changer l'ordre du service.Le checkpoint sépare chemin exécuté, lu ou supposé et état cible contrôlé. Restore conserve l'ordre de mission, avec vérification préalable des étapes non prouvées plutôt que promotion implicite en travail prêt à exécuter.For unfinished work, the notebook says whether the method was tried, read or guessed, separately from whether the intended station was checked. On return, the cooks verify uncertain steps before acting without rearranging the service.Remaining tasks retain both path provenance and a separate target-state check. Restore preserves mission order while putting unproven steps behind verification, rather than treating their saved presence as evidence of readiness.

Changer le poste des rappels sans perdre les commandes déjà notéesDeepSeek Harness documente une migration des automatisations à portée expliciteMove the reminder desk without losing the work already bookedDeepSeek Harness documents automation preservation and mode limits

La maison déplace son poste de rappels et annonce garder les tâches déjà notées. Certains ustensiles restent réservés à trois façons de travailler. Elle annonce aussi réparer des nouveaux billets bloqués après deux arrêts séparés par une reprise. Nous avons lu l'annonce, sans essayer ces changements.DeepSeek Harness 0.2.1-alpha.1 annonce la conservation des tâches après retrait du bundle expérimental, avec Automation intégré au Web. Les outils de rappel sont exposés en Standard, Creator et PTC. Une correction stop/resume/stop est aussi annoncée ; la preuve est documentaire, sans exécution indépendante.The house says its reminder desk has moved while existing jobs have been kept. Reminder utensils are restricted to three working arrangements. The same announcement reports a fix for new tickets held after stop, restart and stop again; we have not tried these changes.The verified release notes distinguish task-preserving automation migration from mode-scoped reminder tools and a separate message-queue repair. They establish published claims, not tested implementation behavior. No shared root cause is inferred.

Le même plan ne doit pas perdre sa signature pendant la pauseAI-DLC préserve l'approbation du même plan à la repriseThe same plan should keep its signature through a breakAI-DLC retains scoped plan approval across common interruptions

Le client a accepté un plan, puis le cahier du service est raccourci ou le travail mis en pause. La maison ne devrait pas jeter cet accord si le même plan reprend. Un correctif est accepté pour ces chemins courants. Il n'a pas été essayé ici dans un service réel.AI-DLC fusionne le 1er octobre un routage qui évalue l'approbation par rapport aux cibles du prochain directive. L'accord est conservé après compaction, parking/reprise et questions intercalées dans les chemins documentés. Le changement est fusionné, sans validation live ni garantie générale de récupération.A guest signs the plan before the kitchen pauses or shortens its notes. Restarting that same plan should not discard the signature and ask again for no reason. The accepted repair targets these common paths, without a confirmed live trial in this account.The verified routing change looks ahead to the directive being issued rather than using whichever directive was previously active. It preserves existing code-plan approval through documented interruption paths. Inspection does not establish universal recovery correctness.

Garder l'ordre d'arrêt jusqu'à l'arrivée du commisCline conserve Stop avant la création du runKeep the stop instruction until its cook is ready to receive itCline preserves Stop across the pre-run preparation window

Le chef demande l'arrêt alors que le commis prépare encore son poste ; le tableau peut déjà dire arrêté sans que le travail cesse. La correction annoncée garde cette demande et la remet au commis dès que son travail commence.SDK 0.0.88 conserve Stop reçu pendant la préparation puis le réémet quand le run existe. Le correctif cible la fenêtre où l'interface pouvait montrer arrêté tandis que le travail continuait.The chef calls stop before the cook has finished setting up, while the board may already look stopped. The announced repair keeps that instruction and delivers it when the cook's work becomes available to stop.The release addresses cancellation arriving before an active run exists. Retaining and later delivering Stop closes the described preparation-to-run gap rather than trusting the client's stopped appearance.

Le dernier numéro vu peut cacher un bon manquantOpenHands reprend le stream après le dernier événement contiguThe highest ticket number can hide a missing order slipOpenHands resumes streams from contiguous event coverage

Le passe suit le numéro du bon, pas seulement les mots de la commande, pour reconnaître l'annonce et sa fiche définitive. Voir un bon plus récent ne permet pas d'oublier celui qui manque encore au milieu.OpenHands remplace le rapprochement textuel par un item_id partagé entre stream et persistance. Le watermark contigu after_seq, plutôt que le numéro maximal reçu, préserve les événements durables retardés ou hors ordre.The pass uses the ticket's identity to match a spoken preview to its permanent slip, rather than comparing the order's words. Receiving a higher-numbered slip does not prove that every earlier one arrived.Shared event identity replaces text matching, while a contiguous after_seq cursor records complete coverage rather than the highest observed sequence. Recovery therefore keeps gaps visible when durable events arrive out of order.

Retrouver le ticket ne rend pas l'ancien accord valableOpenClaw documente une reprise fondée sur l'autorité survivanteFinding the old order does not renew its permissionOpenClaw stable notes require surviving authority for restart recovery

Le commis revient après une coupure et retrouve ses tickets. Avant de repartir, il faut encore savoir qui les a demandés et si leur accord tient toujours. La maison annonce ces contrôles dans sa version stable. Nous avons lu une partie du cahier, sans essayer leur fonctionnement.Les notes stables OpenClaw 2026.9.7 décrivent des contrôles d'autorité source survivante et d'origine humaine enregistrée avant reprise interne. Ils concernent aussi les réponses préparées. La publication est vérifiée ; seuls des passages sélectionnés ont été lus, sans test de code ni runtime.After an interruption, the cook finds an old ticket and a reply already written. Neither establishes that work may still proceed. The stable announcement describes checking current authority and recorded human origin, but this review did not try those controls in service.The selected release evidence makes restart dispatch an authorization decision, including for prepared replies. Persisted work alone is insufficient. These are official documented mechanisms, not independently verified runtime behavior.

Le feu repart, mais le chef ne peut plus donner son accordUne reprise vivante ne prouve pas la disponibilité du contrôleThe pans are moving, but the chef's approval goes nowhereA live resumed run can still have a broken approval path

Le commis reprend les casseroles après une interruption. Le tableau dit que le chef peut donner son accord, mais chaque accord est refusé. C'est un incident raconté, pas une panne vérifiée ailleurs.Un signalement LongHorizon-Harness décrit un run repris vivant dont les approbations échouent avec HTTP 409. L'auteur rapporte un état propriétaire managed=false alors que l'endpoint de statut annonce managed=true. Ni reproduction indépendante ni correctif fusionné ne sont établis.After a break, cooking starts again and the board says the chef is back in charge. Yet the chef's approvals never get through. We have one account of this trouble, not an independently checked repair.LongHorizon-Harness has a reported resume failure in which process liveness survives but approvals receive HTTP 409. The reporter attributes it to managed=false in owner state despite managed=true in the status endpoint. Independent reproduction and a merged remedy are not established.

Le carnet reprend le service dans une autre cuisineLa reprise restaurait la conversation, pas assez d’état d’exécutionThe order pad resumes service at a different stationResume restored the conversation but too little execution state

Après une coupure, le commis retrouve toutes les commandes dans son carnet. Pourtant, il reprend devant d’autres casseroles avec une livraison différente. Il continue comme si le service n’avait jamais changé de poste.Une lignée d’incidents de reprise de session montre pourquoi rejouer la seule conversation ne suffit pas dès que le travail dépend du workspace, du provider et du contexte d’exécution.After an interruption, the cook finds every order in the pad. Yet service resumes beside different pans with a different delivery. The cook carries on as though the station never changed.A session-resume lineage shows why replaying conversation alone falls short whenever the job depends on workspace, provider and execution context.

Le carnet recule, mais la préparation reste sur le billotLa conversation a été rembobinée, le working tree nonThe order book goes back while the worktop stays changedThe conversation rewound; the working tree did not

Le chef remonte le carnet de commandes de trois pages. Le commis reprend alors un ticket vieux de vingt minutes. Pourtant, les aliments découpés et assaisonnés depuis sont toujours sur le billot. Le carnet revient en arrière, pas la cuisine.Un rewind pouvait restaurer l’historique conversationnel en laissant les modifications de fichiers en place. Le résultat est un état divisé entre ce dont l’agent se souvient et ce que contient réellement le workspace.The chef turns the order book back three pages. The cook resumes a ticket from twenty minutes ago. Yet everything cut and seasoned since then remains on the bench. The book goes back; the kitchen does not.A rewind could restore conversational history while leaving file edits in place. The result is a split state between what the agent remembers and what the workspace actually contains.

Le commis retrouve son carnet, pas son posteLa reprise de conversation se sépare de la reprise d’exécutionThe cook gets the pad back, but not the stationConversation recovery is separating from execution recovery

Le commis revient et retrouve toutes ses commandes dans le carnet. Pourtant, ses casseroles ont bougé, la réserve a changé et le travail restant manque. Cinq maisons rencontrent ce même écart entre le carnet rendu et le poste réel.Les fonctions de reprise et de rewind de Codex, Cline, OpenHands, Archon et Claude Code exposent la même abstraction manquante. État conversationnel, état du workspace et identité d’exécution sont trois historiques distincts mais interdépendants. Restaurer le transcript ne restaure ni les outils, ni le plan de travail, ni les obligations restées ouvertes.A returning cook can read every order from the recovered pad. Yet the pans, pantry, and unfinished work may all have changed. Five houses meet this same gap between the returned pad and the real station.Resume and rewind in Codex, Cline, OpenHands, Archon and Claude Code keep surfacing one missing abstraction. Transcript state, workspace state and execution identity are separate histories that depend on each other. Restoring the transcript restores neither the tool surface, nor the workspace, nor the obligations still outstanding.

Le cahier de la maisonHistorique et traçabilitéThe house notebookHistory and traceability

Ce que la maison sait vraiment, ce qu’elle suppose et ce qu’elle transmet.Provenance, journalisation, causalité, limites de preuve et mémoire institutionnelle.What the house truly knows, assumes and passes on.Provenance, logging, causality, evidence limits and institutional memory.

6 fiches6 entrées6 cards6 entries

La note de l'aide ne devient pas un souvenir du clientEngram filtre la capture automatique selon l'origine de l'entréeA helper's note must not enter the guest's remembered wordsEngram excludes synthetic inputs from automatic user memory

Une note d'aide arrive au même guichet qu'une parole du client. La correction acceptée le 6 octobre distingue leur origine avant de remplir automatiquement le carnet.La correction Engram fusionnée le 6 octobre exclut tâches déléguées et réveils d'extension de la capture utilisateur automatique. Elle suit la provenance par session avant les hooks asynchrones plutôt que de se fier au seul transport RPC.The counter receives both guest requests and notes from helpers. An accepted October 6 change records where each came from before deciding what belongs in the guest's memory.The merged Engram change separates input provenance from transport. Extension injections and Gentle Agents child inputs are excluded from automatic user capture, while human/RPC inputs remain supported.

Le même ticket ne remet pas l'attente à zéroDeepAgents préserve durée et état UI lors du rejeuA repeated order ticket must not erase the waitDeepAgents preserves dispatch UI history across replay

Le même ticket revient au tableau et fait paraître la commande toute neuve. La maison publie une réparation pour garder l'attente déjà écoulée. Nous avons lu le changement et ses essais, sans les refaire.DeepAgents Code 0.1.81 conserve l'enregistrement d'un sous-agent lorsque QuickJS réémet un démarrage avec le même identifiant. Le patch fusionné protège l'heure initiale et les états terminaux de l'UI. Les tests ont été lus, pas exécutés.The board receives the same order number again. Starting its clock over would hide how long the guest has already waited. A published repair keeps that history; we inspected the change without testing it in service.A verified release includes replay-aware subagent-panel state in DeepAgents. Repeated dispatch starts reuse the existing record instead of replacing it. This is evidence of a shipped UI change, with no independent test execution in this review.

Le billet porte son carnet et son parent directOpenCode ajoute session et parent immédiat aux headersThe slip names its notebook and its immediate parentOpenCode adds session and immediate-parent correlation headers

Le billet porte le numéro de son carnet et celui du carnet dont il vient directement ; le tout premier n'a pas de parent inscrit. Ces marques aident à relier les commandes sans changer le classement des copies déjà gardées.x-opencode-session-id et x-opencode-parent-session-id relient la requête à sa session et à son parent immédiat ; le parent est absent à la racine. Les clés de cache restent inchangées.Each slip carries its notebook's number and the number of the notebook it directly came from; the first has no parent entry. These marks help trace orders without changing how saved copies are filed.The two namespaced headers provide session correlation and immediate parentage, omitting the parent at the root. They do not change cache keys or supply a complete ancestry root.

Trois carnets racontent la même commande à des heures différentesUne tâche distribuée a besoin d’un ordre commun entre statuts, messages et artefactsThree order books tell the same service at different timesA distributed task needs common ordering across status, messages, and artifacts

Un commis note que le plat est prêt, un autre ajoute ensuite une nouvelle préparation, et le chef relit les deux sans savoir lequel vient d’abord. Tout paraît juste séparément. Ensemble, l’histoire devient ambiguë. Une solution est proposée, mais rien n’établit qu’elle soit déjà servie.Une PR A2A ouverte propose une timeline dans le snapshot de tâche et des générations monotones afin de conserver l’ordre entre messages, progressions et artefacts. La proposition réutilise l’événement de statut existant au lieu d’ajouter un nouveau type de flux. Elle n’est pas établie comme fusionnée ou livrée dans le bundle observé.One cook marks the dish ready, another later adds fresh preparation, and the chef cannot tell which note came first. Each book looks right alone. Together, the story is ambiguous. A remedy is proposed, but nothing shows it has reached service.An open A2A pull request proposes a task-snapshot timeline plus monotonic generations to preserve ordering across messages, progress, and artifacts. It reuses the existing status event rather than adding another stream event type. The observed bundle does not establish that the proposal has merged or shipped.

Les plis sont scellés, le carnet de service se videLe chiffrement entre subagents a gagné en confidentialité et perdu en auditabilitéSealed notes leave the service book blankEncryption between subagents gained confidentiality and lost auditability

Pour éviter les regards indiscrets, les sous-chefs s’écrivent sous pli fermé. Seul le destinataire peut lire la consigne. Le chef ne le peut pas davantage que les autres. Le carnet de service ne garde donc plus aucune trace de ces échanges.Le chiffrement des communications agent-à-agent a protégé la confidentialité des destinataires. Il a aussi retiré de l’historique normal du parent les traces lisibles des tâches et des messages, supprimant le support sur lequel les opérateurs s’appuyaient.To stop prying eyes, the sous-chefs write to each other in sealed notes. Only the named recipient can read an instruction. The head chef cannot read it either. The service book therefore keeps no trace of those exchanges.Encrypting agent-to-agent communication protected recipient confidentiality. It also removed readable task and message traces from the parent’s normal history, eliminating the support operators relied on.

L’ardoise promet encore un plat abandonnéUn nom de branche flatteur a survécu à sa propre divergence et n’indiquait plus aucune livraison procheThe board still promises a dish nobody cooksA promising branch name outlived its own divergence and no longer indicated near-term shipping

Dans trois maisons, une ardoise annonçait un nouveau plat. Deux ou trois préparations ont commencé, puis plus rien. La carte du jour a changé des centaines de fois depuis. Une vieille annonce ne prouve pas qu’une commande avance.Un nom de branche annonçait une fonctionnalité future crédible. La branche est restée en avance de quelques commits pendant que main avançait de plusieurs centaines. Ce n’est pas le nom qui qualifie le signal mais la divergence : lu seul, le nom aurait été pris pour une livraison proche.In three houses, a board promised a new dish. Two or three preparations began, then nothing followed. The daily menu changed hundreds of times around it. An old promise is not an order moving toward the pass.A branch name advertised a plausible future capability. It stayed a handful of commits ahead while main gained several hundred. Name and existence are cheap; divergence is what carries information, and without reading it the branch passes for a roadmap claim it no longer supports.