Au passe — Un dépannage devenu indispensable, puis casséUn contournement toléré devient une dépendance sans contratAt the pass — A stopgap the house came to depend onA tolerated workaround becomes an uncontracted dependency
Des équipes rangent leurs fiches dans un tiroir caché dans un autre. Comme la tournée du matin ne descend pas si loin, elles ajoutent un geste spécial pour les remonter. Cette habitude tient des mois, puis un changement dans l’ouverture de la maison la casse alors qu’aucune fiche n’a bougé.La dérive de contournement est le passage d’un contournement transitoire à une dépendance durable, qui porte alors sa propre surface de panne. Chez Claude Code, la découverte au démarrage ignorait les skills imbriqués, et les utilisateurs les ont exposés par des hooks de démarrage. Une évolution ultérieure du démarrage a cassé ce contournement alors qu’aucun fichier de skill n’avait changé.Crews file their cards in a drawer hidden inside another. Because the morning round never reaches that deep, they add a special opening move to fetch them. The habit works for months, then a change in opening breaks it even though no card moved.Workaround drift is the shift from a transitional workaround to a durable dependency that carries its own failure surface. At Claude Code, startup discovery skipped nested skills, and users exposed them through startup hooks instead. A later change to startup behavior broke that workaround while no skill file had changed.
La carte qui changeÉvolution et cycle de vieThe changing menuEvolution and lifecycleAu passe — Les fiches n’ont pas bougé, l’ouverture a changéSignauxAt the pass — The cards stayed put while opening changedSignals
Au service, Le signe, c’est une panne du côté de la maison alors que tes fiches sont intactes, au mot près. Personne ne sait dire quel appui a lâché, parce que le geste ajouté n’était écrit nulle part. On ne le retrouve que dans les habitudes de ceux qui s’en servaient chaque matin.Le signal est une rupture qui suit un changement du produit hôte alors que les fichiers du contournement sont inchangés. Le contournement ne figure dans aucun contrat publié : il s’appuie sur un comportement interne, ici l’ordre d’initialisation et l’algorithme de découverte. Son existence n’est lisible que dans les installations des utilisateurs, pas dans la documentation du harnais.During service, The tell is a failure on the house’s side while your own cards are intact, word for word. Nobody can name the ledge that gave way, because the extra move was never written down anywhere. It survives only in the habits of the people who ran it every morning.The signal is a break that follows a host product change while the workaround’s own files are unchanged. The workaround appears in no published contract: it leans on internal behavior, here the initialization order and the discovery algorithm. Its existence is legible only in user installations, never in the harness documentation.
Au passe — L’ordre des tiroirs comptait plus que la ficheMécanismeAt the pass — The order of the drawers outranked the cardMechanism
Au service, Tout le monde croyait que la fiche faisait foi. En vérité, ce qui décidait, c’était la tournée du matin et l’ordre dans lequel on ouvre les tiroirs. Cette tournée n’était écrite nulle part, et la maison pouvait la changer sans prévenir personne. Le geste ajouté reposait dessus de tout son poids.L’interface effective n’était pas le format du fichier de skill mais l’algorithme de découverte associé à l’ordre d’initialisation. Le contournement transforme ce comportement interne, non versionné et non documenté, en dépendance portante. Une dépendance de ce type n’hérite d’aucune garantie de compatibilité : elle tient tant que l’implémentation ne bouge pas.During service, Everyone assumed the card was the authority. What actually decided was the morning round and the order the drawers get opened in. That round was written nowhere, and the house could change it without telling a soul. The extra move rested its whole weight on it.The effective interface was not the skill file format but the discovery algorithm together with the initialization order. The workaround turns that internal, unversioned and undocumented behavior into a load-bearing dependency. Such a dependency inherits no compatibility guarantee: it holds only while the implementation stays put.
Au passe — Afficher quelles fiches sont vraiment sorties ce matinRéponseAt the pass — Post the round, and post every change to itResponse
Au service, La tournée des tiroirs doit être écrite, datée, et annoncée quand elle change. Le poste doit pouvoir dire d’un coup d’œil quelles fiches sont réellement sorties ce matin. Les appuis dont se servent les gestes ajoutés se vérifient avant chaque changement d’ouverture, pas après. Et un dépannage qu’on décide de garder, on l’inscrit au tableau comme le reste.Versionner la sémantique de découverte et publier l’inventaire effectivement chargé au démarrage. Traiter les points d’extension utilisés par les contournements comme une surface de compatibilité, et éprouver leur comportement à chaque montée de version. Une dépendance qu’on choisit de garder se déclare : un contournement documenté, versionné et testé a cessé d’être un contournement.During service, The round of the drawers gets written down, dated, and announced whenever it changes. The station should be able to say at a glance which cards actually came out this morning. The ledges those extra moves lean on get tested before opening changes, not after. And a stopgap you decide to keep goes up on the board like everything else.Version the discovery semantics and publish the inventory actually loaded at startup. Treat the extension points that workarounds rely on as a compatibility surface, and exercise their behavior at every version bump. A dependency you choose to keep gets declared: a documented, versioned and tested workaround has stopped being a workaround.
Au passe — Une tournée non écrite change sans prévenirLeçonAt the pass — The unwritten ledge is the one that vanishesLesson
Une fiche ne vaut que si quelqu’un va la chercher. La tournée qui choisit les tiroirs fait donc partie de la fiche. Un geste de dépannage que personne ne retire finit par tenir le service, jusqu’au jour où son appui disparaît.Les règles de découverte appartiennent à l’API des skills : les modifier revient à modifier un contrat public, même lorsqu’aucun format de fichier ne bouge. Un contournement durable déplace la dépendance vers ce contrat implicite et hérite de sa volatilité.During service, A card is worth nothing unless somebody goes and fetches it, so the round that picks the drawers is part of the card. A stopgap nobody takes down ends up holding the service, until the day its ledge is gone.Discovery rules belong to the skill API: changing them changes a public contract even when no file format moves. A durable workaround relocates the dependency onto that implicit contract and inherits its volatility.

