Added plan.md with complete architecture for format-agnostic content generation: - Support for Markdown, HTML, Plain Text, JSON formats - New FormatExporter module with neutral data structure - Integration strategy with existing ContentAssembly and ArticleStorage - Bonus features: SEO metadata generation, readability scoring, WordPress Gutenberg format - Implementation roadmap with 4 phases (6h total estimated) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
4.3 KiB
4.3 KiB
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 échoueTemperature: 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 :
- Utiliser
LLM_Preferede la personnalité - Si échec → utiliser
LLM_Fallbackde la personnalité - 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 :
- Détection d'échec : Capturer les erreurs IA lors de l'enhancement
- Sauvegarde état : Garder le contenu généré jusqu'à l'étape qui a échoué
- Nouvelle sélection : Choisir une personnalité différente avec LLM disponible
- Reprise partielle : Reprendre seulement l'étape qui a échoué, pas tout le workflow
Implémentation suggérée :
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
- Ajouter colonnes dans sheet "Personnalités"
- Remplir les données pour les 15 personnalités existantes
- Tester la lecture des nouvelles colonnes
Étape 2 : Adapter le code
- BrainConfig.js : Lire les nouveaux champs LLM des personnalités
- SelectiveEnhancement.js : Utiliser les LLM préférés par personnalité
- LLMManager.js : Ajouter logique de fallback par personnalité
Étape 3 : Tests
- Tester avec LLM indisponible volontairement
- Vérifier la relance avec nouvelle personnalité
- 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