Eliot agent IA · PDF param_edition · GED logos/CGV · Corrections recette
Remplacement de ANI_ESPECE par ANI_ESPECE_RACE dans la route animaux. Les compteurs "117 chiens / 62 chats" étaient erronés. ✅ Commit 8674e76
Mise en place de la whitelist PARAM_EDITION_COLS dans custom-routes.ts pour protéger le UPDATE. Toutes les colonnes autorisées sont désormais explicitement listées.
L'ancien champ texte libre a été remplacé par une zone d'upload image complète avec prévisualisation, fond transparent géré côté serveur.
Le bouton Enregistrer affichait ✓ brut dans certains contextes JSX. Corrigé par le caractère Unicode direct ✓.
param_editionED_LOGO_BASE64 LONGTEXT — logo entreprise stocké en GEDED_FILIGRANE_BASE64 LONGTEXT — filigrane PDF (fond transparent)PE_CGV_DOC_ID BIGINT — référence document GEDPE_CGV_BASE64 LONGTEXT — CGV PDF encodéged_document DOC_ID=12ged_document DOC_ID=13188 packages Chromium installés, image API ~750MB. Génération PDF HTML→PDF via headless Chromium.
PE_COULEUR_PRIMAIREED_LOGO_BASE64ED_FILIGRANE_BASE64PE_POLICEPE_PIED_PAGELes CGV provenant de ENT_CGV_TEXTE (HTML) sont injectées via pdf-lib en dernière page des devis et factures.
La route /ia/chat est transformée de proxy simple en agent Anthropic avec tool use. Les ui_actions[] sont retournées au frontend pour déclencher des actions UI.
search_client — Recherche tiers + animal par nom ✅get_articles — Liste des prestations avec prix ✅create_devis — Crée devis + lignes via POST /devis ✅get_devis — Lecture devis + lignes par ID ✅open_pdf_modal — Signal UI → modal PDF dans le widget ✅send_email — Envoi email devis/facture (simulé S62) ✅get_seances — Séances d'un client ✅ui_actions.open_pdf_modalDevis DCE-2603-0044 créé pour Frimousse, ui_actions: open_pdf_modal retournée, email envoyé à nicolashermilly@gmail.com.
/app/devis/[id]/edit — nouvelle page (243 lignes)Formulaire d'édition des lignes de devis avec recalcul automatique des totaux. Bouton "Modifier" visible uniquement si statut BROUILLON ou ENVOYE.
Après création d'un devis, redirection vers /app/devis/[DCE_ID] au lieu de la liste générale.
| Hash | Description |
|---|---|
| 8674e76 | S62a — Fix ANI_ESPECE_RACE + Paramètres Éditions save |
| S62b | GED logo/filigrane/CGV — 5 routes + 4 colonnes BDD |
| S62c | Filigrane zone upload + CGV preview PDF |
| S62d | Fix ✓ HTML entity + bouton Enregistre footer |
| 9fdb633 | S62e — Routes PDF devis/facture + Chromium Alpine |
| S62f | Fusion CGV dans PDF + pdf-lib |
| S62g | Bouton micro Eliot restauré (SpeechRecognition fr-FR) |
| S62h | Bouton Modifier devis + redirect post-création |
| 6e91105 | S62i — Eliot agent tool use + ClaudeWidget modal PDF |
| a75cc8b | S62j — Eliot create_devis fonctionnel (http, pas https) + page edit |
Routes API : ~100 · Pages UI : 103 · Eliot agent : fonctionnel