engineering · 2026-09-10

Un correctif qui reproduisait son propre défaut

La liste des négations était cherchée en sous-chaîne. L’article indéfini contient la particule de négation, et une présentation demandée disparaissait sans bruit.

Écrit et couvert par des tests, pas encore observé en exécution réelleDeskworth · publié · mis à jour · 1 source · Deskworth OS 0.0.22

Une demande nommant trois livrables en produisait deux. L’analyseur était neuf, écrit justement pour empêcher une demande de produire ce qu’elle n’avait pas demandé.

#La cause

La négation était détectée par recherche de sous-chaîne. En français, l’article indéfini contient la particule de négation : « une présentation » contient « ne ». L’analyseur lisait une présentation demandée comme une présentation refusée, et la laissait tomber.

#Le correctif, et pourquoi il est court

La négation se cherche sur des mots entiers, en découpant sur tout ce qui n’est pas alphanumérique, l’apostrophe exceptée. Deux lignes. Ce qui est intéressant, c’est ce qui l’a attrapé : un test exigeant qu’une demande combinée rende trois sorties distinctes, écrit avant qu’on ne fasse confiance à l’analyseur.

#Deux leçons voisines, tirées de la même passe

Les trois ont la même forme : la vérification regardait de la prose ou une variable globale, quand la propriété vivait dans une structure.

#Sources

  1. Deskworth OS, handover report 0.0.22Deskworthinternal handover report · Deskworth OS 0.0.22 · commit d59e30e · publié 2026-09-10 · lu 2026-09-10Document interne, non publié

Read next