fix(assets): le test de reproductibilité ne vidait pas le cache ComfyUI

Correction d'une preuve qui n'en était pas une.

Ma vérification lançait le même plan deux fois et comparait les
empreintes. Le porteur ayant indiqué où ComfyUI écrit ses images, le
dossier a pu être inspecté : UN SEUL fichier y figurait alors que deux
exécutions avaient été lancées.

ComfyUI met en cache le résultat d'un graphe identique. La « deuxième
exécution » n'avait rien recalculé — elle avait relu la première.
Comparer deux empreintes dans ces conditions ne mesure que le cache.

Après POST /free, une exécution authentique produit decor_00002_.png,
bit-identique au premier. La conclusion était juste, la méthode ne
l'était pas.

Le test devient un mode de l'outil plutôt qu'une manipulation :
--reproductibilite génère, vide le cache, régénère et compare. Un test
de reproductibilité qui ne vide pas le cache se ment à lui-même.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
OKI
2026-07-27 12:25:52 -04:00
co-authored by Claude Opus 5
parent bd29770bd2
commit eaaf7c34ad
4 changed files with 120 additions and 9 deletions
+27 -8
View File
@@ -60,16 +60,35 @@ serait mettre la charrue avant les bœufs.
Le porteur a ouvert l'accès à son instance (`127.0.0.1:8188`, ComfyUI 0.27.1, deux GPU
AMD). Le pipeline a donc été exécuté pour de vrai, pas simulé.
### Reproductibilité prouvée au bit près
### Reproductibilité prouvée — après correction d'un test qui ne prouvait rien
| Exécution | seed | SHA-256 de l'image |
|---|---|---|
| 1 | 3475989105 | `b7007a7a1088cb359a06ddaaff358e92…` |
| 2 | 3475989105 | `b7007a7a1088cb359a06ddaaff358e92…` |
**Images bit-identiques**, `sha256 b7007a7a1088cb359a06ddaaff358e92…`, sur deux exécutions
séparées par un **vidage du cache**. Workflow de référence : `workflows/decor-sdxl.json`
(SDXL 1.0, 1024×576, 20 pas, dpmpp_2m/karras).
**Images bit-identiques.** C'est précisément ce que le pack d'origine annonçait sans y
parvenir, et c'est maintenant vérifié plutôt qu'affirmé. Workflow de référence :
`workflows/decor-sdxl.json` (SDXL 1.0, 1024×576, 20 pas, dpmpp_2m/karras).
Le mot « après vidage du cache » est tout le sujet, et il a failli manquer.
Ma première vérification lançait simplement le même plan deux fois et comparait les
empreintes. Le porteur ayant indiqué où ComfyUI écrit ses images
(`/media/sucupira/DKXONE/ComfyUI/output`), le dossier a pu être inspecté : **un seul
fichier y figurait** alors que deux exécutions avaient été lancées.
ComfyUI met en cache le résultat d'un graphe identique. Ma « deuxième exécution » n'avait
donc rien recalculé — elle avait relu la première. Comparer deux empreintes dans ces
conditions ne mesure que le bon fonctionnement du cache.
Après `POST /free`, une exécution authentique a produit `decor_00002_.png`, bit-identique
au premier. **La conclusion était juste ; la méthode ne l'était pas.**
Le test est désormais un mode de l'outil, pas une manipulation à la main :
```bash
python3 comfyui_client.py --workflow workflows/decor-sdxl.json \
--plan plan-assets.json --reproductibilite
```
Il génère, vide le cache, régénère et compare. Un test de reproductibilité qui ne vide pas
le cache est un test qui se ment à lui-même.
### Deux défauts de mon propre client, révélés par le réel