- Mot mal tapé = un seul glissement (une lettre ajoutée, retirée, ou deux
voisines inversées), jamais au début du mot (préfixes : valide/invalide,
limitée/illimitée), jamais une lettre remplacée (deux/dix, majorité/minorité),
jamais sur un mot de négation ou de quantité, mots de 4 lettres au moins.
- Parenthèses, crochets, « / » et tout ce qui est entre accents graves comptent
comme le sens (ceil(N^(1/5)) → ceil(N^1/5) n'est plus une coquille).
- Caractères invisibles (inversion du sens d'écriture, largeur nulle, BOM)
refusés dans les textes, titres, traductions et motifs de signalement.
- Déploiement : la version en service est gardée (image « previous ») ; un
témoin marque le déploiement en cours ; « retablir » relance la maquette au
premier déploiement, la version précédente ensuite ; la liste des conteneurs
retirés n'est plus vidée par un pipeline annulé.
- Tests : 59 Rust (dont 14 scénarios d'API, avec deux → dix sur E2 en vigueur
et l'inversion bidi), e2e 12 / 12.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>