Files
cyber-mawonaj 2e0220b1c9 feat(app) : phase 3 — templates ComfyUI paramétriques + smoke tests
- Templates paramétrés (data/workflows/templates/) : substitution de variables
  ({{modele_checkpoint}}, {{resolution}}, {{resolution_largeur/hauteur}},
  {{vram_profile}}) — jamais de réécriture de topologie (PRD §4.6)
- Génération de JSON concrets (/workflows) + régénération automatique à chaque
  écriture du registre, commit git ; suppression si le modèle disparaît
- Champ comfyui_checkpoint ajouté au schéma et au formulaire registre ;
  génération refusée tant qu'il est null (anti-hallucination)
- Smoke test : prompt canari sans modèle (EmptyImage→PreviewImage) posté sur
  COMFYUI_URL/prompt, statut remonté dans l'UI, dégradation gracieuse
- Endpoint de téléchargement /workflows/fichier/[nom]
- Tests : 11 nouveaux cas (substitution, conversion numérique, variable
  inconnue, paliers VRAM, résolution invalide, checkpoint null, smoke test
  accepté/refusé/injoignable)
- Package YNH : question comfyui_url + COMFYUI_URL dans l'env applicatif
- Vérifié : check/lint/test (38)/build verts, autofixer propre, test fumée
  HTTP complet (seed templates, refus sans checkpoint, génération, JSON
  concret correct, téléchargement, smoke test dégradé, commits git)
2026-08-01 11:05:30 -04:00

50 lines
1.7 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<svg xmlns="http://www.w3.org/2000/svg" style="display: none">
<!-- Set SVG veille-ia (conventions OKI : viewBox 24×24, stroke 2 px, currentColor, angles nets).
Usage : <use href="icons.svg#id" /> via le composant Icon.svelte. -->
<symbol id="ka" viewBox="0 0 24 24">
<!-- Tambour ka : icône maîtresse -->
<path d="M7 3h10l2 18H5L7 3z" />
<path d="M5 8h14M6 15h12" />
<path d="M9 3v5M15 3v5" />
</symbol>
<symbol id="accueil" viewBox="0 0 24 24">
<path d="M3 12l9-9 9 9" />
<path d="M5 10v11h14V10" />
</symbol>
<symbol id="registre" viewBox="0 0 24 24">
<path d="M4 4h16v16H4z" />
<path d="M8 8h8M8 12h8M8 16h5" />
</symbol>
<symbol id="profils" viewBox="0 0 24 24">
<circle cx="12" cy="8" r="4" />
<path d="M4 21l2-5h12l2 5" />
</symbol>
<symbol id="cible" viewBox="0 0 24 24">
<circle cx="12" cy="12" r="9" />
<circle cx="12" cy="12" r="4" />
<path d="M12 1v4M12 19v4M1 12h4M19 12h4" />
</symbol>
<symbol id="alerte" viewBox="0 0 24 24">
<path d="M6 16v-5a6 6 0 0 1 12 0v5l2 3H4l2-3z" />
<path d="M10 21a2 2 0 0 0 4 0" />
</symbol>
<symbol id="cle" viewBox="0 0 24 24">
<circle cx="8" cy="12" r="5" />
<path d="M13 12h9M18 12v4M21 12v3" />
</symbol>
<symbol id="avertissement" viewBox="0 0 24 24">
<path d="M12 3L22 20H2L12 3z" />
<path d="M12 10v4M12 17v0.5" />
</symbol>
<symbol id="verifie" viewBox="0 0 24 24">
<path d="M3 13l6 6L21 5" />
</symbol>
<symbol id="workflow" viewBox="0 0 24 24">
<!-- Graphe de nœuds -->
<rect x="2" y="9" width="6" height="6" />
<rect x="16" y="2" width="6" height="6" />
<rect x="16" y="16" width="6" height="6" />
<path d="M8 12h4M12 12l4-7M12 12l4 7" />
</symbol>
</svg>