diff --git a/common/nyora-doc-api-hermes-guide.md b/common/nyora-doc-api-hermes-guide.md index bd43bac..0352214 100644 --- a/common/nyora-doc-api-hermes-guide.md +++ b/common/nyora-doc-api-hermes-guide.md @@ -126,3 +126,34 @@ curl -X POST http://nyora-doc-api:8000/v1/generate \ --- *Document créé le 01/07/2026 lors de la mise à niveau premium v3 de nyora-doc-api.* + +## Contrôle qualité automatique (QC) — PPTX + +Depuis le 01/07/2026 (commit `cbe8cf1`), toute génération PPTX est +auto-vérifiée en fin de rendu : `validate_pptx_layout()` relit la +présentation générée et détecte les zones de texte dont le contenu dépasse +probablement la hauteur disponible du conteneur (titre, KPI, contenu libre). + +C'est un correctif direct au bug historique du bandeau de titre à hauteur +fixe (1.1in) qui débordait sur le contenu dès qu'un titre passait sur deux +lignes — le bandeau se dimensionne maintenant dynamiquement +(`estimate_wrapped_lines()` dans `formatting.py`) et le reste de la slide +suit. + +Le contrôle est **non bloquant** : le fichier part toujours. Les +avertissements éventuels arrivent dans les en-têtes HTTP de la réponse : + +``` +X-QC-Status: ok | warning +X-QC-Warnings: ["Diapo 2 — texte probablement en debordement (\"...\") : besoin estime ~1.42\" pour 3 ligne(s), zone disponible 1.30\"."] +``` + +Hermes/n8n qui appellent `/v1/generate` en PPTX devraient lire ces deux +en-têtes sur la réponse et, si `X-QC-Status: warning`, le signaler à +l'utilisateur (ex. message Telegram) plutôt que livrer silencieusement un +document potentiellement en débordement — le fichier reste utilisable, mais +mérite une relecture rapide côté PowerPoint. + +Limite connue de ce QC : il porte uniquement sur le mode données (JSON), pas +sur le mode template — cohérent avec la limitation de restyle déjà +documentée ci-dessus.