← Journal technique
Ferry·distribué & temps réel

Un message de protocole qui était structurellement du code mort

The protocol sent an Opened receipt 'only if the sender asked for it', but no field existed to express the request, so the message could never be sent.

Construit, et rien ne s'en servait

Livré, typé, injecté, inatteignable. Rien ne l'a jamais appelé.

Le protocole dit qu'un accusé Opened n'est envoyé que si l'expéditeur l'a demandé. Il n'y avait aucun champ nulle part pour exprimer cette demande, donc rien ne pouvait jamais demander, donc le message ne pouvait jamais être envoyé. Ajout de notify_on_open à Offer lui-même plutôt que d'inventer un message de contrôle séparé, puisque c'est une propriété de l'offre.

Ça vaut la peine de le remarquer comme catégorie : une phrase de spec avec une condition dedans (« seulement si X ») est un endroit où vérifier que X est représentable tout court.