Skip to content

docs(réattestation): ce que ce catalogue exige, et ce qui y fait un faux verdict - #15

Merged
stephrobert merged 1 commit into
mainfrom
docs/reattestation
Oct 19, 2026
Merged

stephrobert merged 1 commit into
mainfrom
docs/reattestation

Conversation

@stephrobert

Copy link
Copy Markdown
Owner

Ce que ça ajoute

REATTESTATION.md et sa version française, avec des valeurs mesurées sur le disque et non recopiées : labs et répartition shell/vm, hôtes et réseau attendus, fichiers de solution chiffrés, présence du secret, durée du dernier cycle, dates des verdicts, version du moteur déclarée.

Pourquoi cette page existe

Une campagne de réattestation a coûté cher ce soir, et pas en temps de calcul. Elle a inscrit douze faux ROUGE dans un catalogue avant d'être arrêtée, et s'est bloquée vingt-trois minutes dans un autre. Aucune des deux causes ne tenait aux labs :

Cause Symptôme Ce que le relevé disait
.venv dont les shebangs désignaient l'ancien nom du dépôt après son renommage échec identique sur chaque lab, sur le déchiffrement de la solution ROUGE
un CLI attendant un réseau que le bac à sable ne donne qu'à la commande de premier niveau aucune progression, aucun message rien

Dans les deux cas le validateur avait l'air de mesurer les labs alors qu'il mesurait sa propre panne. Un faux ROUGE coûte plus cher qu'une absence de verdict : il envoie chercher un défaut dans un lab qui n'en a pas.

La page porte donc les quatre pièges connus, leur symptôme et leur correctif, et conseille d'éprouver un seul lab avant d'engager tout le catalogue : c'est ce qui distingue un défaut d'environnement d'un défaut de lab.

Elle dit aussi pourquoi les verdicts sont périmés

Un seul commit par catalogue, vérifié par git show et non repris d'une liste : la campagne du 2026-10-17 qui a rendu bilingues 289 fichiers de tests sur huit catalogues. Leurs intitulés nomment ce qui rend le rejeu obligatoire plutôt que souhaitable : « deux labs qui notaient faux », « une contrainte qu'aucun test ne tenait », « un helper masqué par une variable locale », « 93 appels qui levaient au lieu d'afficher ».

À ne pas confondre avec le commit du 2026-10-19, qui a déplacé l'hôte des doc_url : celui-là ne change aucun geste et ne périme rien.

Et ce que le format du relevé permet au site d'en dire

Le générateur du site ne lit genere_le et dsoxlab que si la clé labs est un dictionnaire. Un relevé plat ne lui apprend rien, même s'il portait la version. Six relevés sur douze sont dans ce cas, et le site affiche alors une attestation sans pouvoir dire avec quoi elle a été obtenue. Corriger le champ sans corriger le format ne servirait à rien, et la page le dit.

🤖 Generated with Claude Code

…aux verdict

`REATTESTATION.md` et sa version française, écrites avec des valeurs mesurées
sur le disque et non recopiées : labs et leur répartition shell/vm, hôtes et
réseau attendus, fichiers de solution chiffrés, présence du secret, durée du
dernier cycle, dates des verdicts, version du moteur déclarée.

La page existe à cause de ce qu'une campagne a coûté ce soir. Elle a inscrit
douze faux ROUGE dans un catalogue avant d'être arrêtée, et s'est bloquée
vingt-trois minutes dans un autre. Aucune des deux causes ne tenait aux labs :
un `.venv` dont les shebangs désignaient l'ancien nom du dépôt après son
renommage, et un outil qui attendait un réseau que le bac à sable ne donne
qu'à la commande de premier niveau. Dans les deux cas le validateur avait
l'air de mesurer les labs alors qu'il mesurait sa propre panne, et il
l'écrivait dans le relevé. Un faux ROUGE coûte plus cher qu'une absence de
verdict : il envoie chercher un défaut dans un lab qui n'en a pas.

La page porte donc quatre pièges, leur symptôme et leur correctif, puis la
CAUSE de la péremption des verdicts de ce catalogue : un seul commit, vérifié
par `git show` et non repris d'une liste, de la campagne du 2026-10-17 qui a
rendu bilingues 289 fichiers de tests sur huit catalogues. Les intitulés de
ces commits nomment ce qui rend le rejeu obligatoire plutôt que souhaitable :
des labs qui notaient faux, une contrainte qu'aucun test ne tenait, un helper
masqué, des appels qui levaient au lieu d'afficher.

Elle dit enfin ce que le format du relevé permet au site d'en dire. Son
générateur ne lit `genere_le` et `dsoxlab` que si la clé `labs` est un
dictionnaire : un relevé plat ne lui apprend rien, même s'il portait la
version. Six relevés sur douze sont dans ce cas, et le site affiche alors une
attestation sans pouvoir dire avec quoi elle a été obtenue.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@stephrobert
stephrobert merged commit f523a04 into main Oct 19, 2026
5 of 6 checks passed
@stephrobert
stephrobert deleted the docs/reattestation branch October 19, 2026 16:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant