# TODO - AMÉLIORATIONS WORKFLOW CRITIQUES ## 🚹 PRIORITÉ 1 - INTÉGRATION IA DANS PERSONNALITÉS ### PROBLÈME ACTUEL - Les fallback IA ont Ă©tĂ© supprimĂ©s pour Ă©viter la dĂ©gradation de qualitĂ© - Si une IA Ă©choue (Claude, OpenAI, Gemini, Mistral), le workflow s'arrĂȘte brutalement - Aucune stratĂ©gie de rĂ©cupĂ©ration intelligente ### SOLUTION REQUISE **IntĂ©grer les prĂ©fĂ©rences IA directement dans les profils de personnalitĂ©s Google Sheets** #### Nouveaux champs Ă  ajouter dans la sheet "PersonnalitĂ©s" : - `LLM_Prefere` : LLM principal pour cette personnalitĂ© (ex: "claude", "openai") - `LLM_Fallback` : LLM de secours si le principal Ă©choue - `Temperature` : TempĂ©rature spĂ©cifique Ă  la personnalitĂ© (0.7-1.0) - `Style_Prompt` : Instructions spĂ©cifiques pour adapter le prompt au style #### Exemple de donnĂ©es : ``` Marc | Expert technique | ... | claude | openai | 0.8 | "Utilise un vocabulaire technique prĂ©cis" Sophie | PassionnĂ©e | ... | gemini | mistral | 1.0 | "Sois chaleureux et utilise des anecdotes" ``` #### Logique de fallback intelligent : 1. Utiliser `LLM_Prefere` de la personnalitĂ© 2. Si Ă©chec → utiliser `LLM_Fallback` de la personnalitĂ© 3. Si Ă©chec → **relancer avec nouvelle personnalitĂ©** (voir ci-dessous) --- ## 🔄 PRIORITÉ 2 - RELANCE AVEC NOUVELLE PERSONNALITÉ ### PROBLÈME ACTUEL - Si l'enhancement d'une personnalitĂ© Ă©choue, le workflow s'arrĂȘte - Perte complĂšte du travail dĂ©jĂ  effectuĂ© ### SOLUTION REQUISE **SystĂšme de relance avec sĂ©lection d'une nouvelle personnalitĂ©** #### StratĂ©gie de rĂ©cupĂ©ration : 1. **DĂ©tection d'Ă©chec** : Capturer les erreurs IA lors de l'enhancement 2. **Sauvegarde Ă©tat** : Garder le contenu gĂ©nĂ©rĂ© jusqu'Ă  l'Ă©tape qui a Ă©chouĂ© 3. **Nouvelle sĂ©lection** : Choisir une personnalitĂ© diffĂ©rente avec LLM disponible 4. **Reprise partielle** : Reprendre seulement l'Ă©tape qui a Ă©chouĂ©, pas tout le workflow #### ImplĂ©mentation suggĂ©rĂ©e : ```javascript async function enhanceWithPersonalityRecovery(content, personality, attempt = 1) { try { return await enhance(content, personality); } catch (error) { if (attempt < 3) { const newPersonality = selectAlternativePersonality(personality); logSh(`🔄 Relance tentative ${attempt + 1} avec ${newPersonality.nom}`, 'INFO'); return await enhanceWithPersonalityRecovery(content, newPersonality, attempt + 1); } throw new Error(`FATAL: Échec aprĂšs 3 tentatives avec personnalitĂ©s diffĂ©rentes`); } } ``` --- ## 📋 PRIORITÉ 3 - AUTRES AMÉLIORATIONS ### A. Monitoring des Ă©checs IA - **Logging dĂ©taillĂ©** : Quel LLM Ă©choue, quand, pourquoi - **MĂ©triques de fiabilitĂ©** : Taux de succĂšs par LLM et par personnalitĂ© - **Alertes proactives** : Notification si un LLM devient indisponible ### B. Configuration dynamique - **Tests de connectivitĂ©** : VĂ©rifier la disponibilitĂ© des LLM avant le workflow - **SĂ©lection intelligente** : Éviter les LLM connus comme indisponibles - **Mise en cache** : Cache des rĂ©ponses LLM pour Ă©viter les redondances ### C. Rollback partiel - **Sauvegarde Ă©tapes** : Sauvegarder le rĂ©sultat de chaque Ă©tape du workflow - **Reprise granulaire** : Reprendre Ă  l'Ă©tape qui a Ă©chouĂ©, pas depuis le dĂ©but --- ## ⚡ IMPLÉMENTATION IMMÉDIATE ### Étape 1 : Modifier Google Sheets 1. Ajouter colonnes dans sheet "PersonnalitĂ©s" 2. Remplir les donnĂ©es pour les 15 personnalitĂ©s existantes 3. Tester la lecture des nouvelles colonnes ### Étape 2 : Adapter le code 1. **BrainConfig.js** : Lire les nouveaux champs LLM des personnalitĂ©s 2. **SelectiveEnhancement.js** : Utiliser les LLM prĂ©fĂ©rĂ©s par personnalitĂ© 3. **LLMManager.js** : Ajouter logique de fallback par personnalitĂ© ### Étape 3 : Tests 1. Tester avec LLM indisponible volontairement 2. VĂ©rifier la relance avec nouvelle personnalitĂ© 3. Valider la qualitĂ© du contenu avec les fallbacks --- ## 🎯 RÉSULTAT ATTENDU - **99% de disponibilitĂ©** : Le workflow ne s'arrĂȘte plus pour des problĂšmes IA temporaires - **QualitĂ© prĂ©servĂ©e** : Chaque personnalitĂ© utilise son LLM optimal - **RĂ©cupĂ©ration intelligente** : Échec d'une personnalitĂ© = essai avec une autre - **Zero perte de travail** : Reprise Ă  l'Ă©tape d'Ă©chec, pas restart complet