nas-runbooks/common/nyora-doc-api-footer-bug-do...

2.0 KiB

nyora-doc-api — Footer Nyora jamais implémenté pour DOCX

Date : 2026-07-03

Constat

Confirmé sur 3 générations réelles consécutives (PMI_Infinity_Formation v1, v2, v3, via Perso) : le DOCX produit par nyora-doc-api n'a jamais eu qu'un footer "Page X / Y". Le footer Nyora obligatoire (liseré or, "· NYORA ·", tagline "Crafted with precision · Built for excellence", "© 2026") n'existe que côté PPTX/PDF (_wrap_html_with_nyora_theme, _get_nyora_pdf_css) — jamais côté DOCX.

Vérifié dans le .pyc compilé avant le "premium upgrade" du 01/07 (commit cbe8cf1) : la fonction n'y était pas non plus. Ce n'est donc pas une régression du upgrade, c'est un trou jamais comblé depuis la création du service.

Fix

/mnt/docker/nyora-doc-api/app/services.py, fonction _add_docx_page_number_footer : ajout de 3 paragraphes avant la pagination existante — bordure supérieure de paragraphe couleur B8862A (simule le liseré or), "· NYORA ·" gras or 8pt, tagline slate italique 7pt, "© 2026" slate 7pt. Backup pris avant patch : services.py.bak_<timestamp>.

Bloquant — PAS ENCORE ACTIF

/app n'est pas bind-mounté dans le container nyora-doc-api (seul /data l'est) — le code est baké dans l'image nyora-doc-api:latest au build. Un docker restart ne suffit pas (vérifié en conditions réelles : patch appliqué sur le host, container redémarré, footer toujours absent en test /v1/generate direct).

Reste à faire

docker compose build (Dockerfile présent dans /mnt/docker/nyora-doc-api/) puis recréer le container. Jamais fait sans accord explicite (service qui sert TT et Nyora en production). Tester ensuite avec un appel /v1/generate direct (format docx, data minimal) et vérifier word/footer1.xml contient bien les runs "NYORA" / tagline / copyright avant de considérer le correctif déployé.

Étape finale une fois validé : git add . && git commit && git push depuis le compte bolbol sur le repo bolbol/nyora-doc-api.