#!/usr/bin/env node import test from 'node:test'; import assert from 'node:assert'; import { requireCommonJS } from './_helpers/commonjs-bridge.js'; import { AutoReporter } from './reporters/AutoReporter.js'; /** * TEST PIPELINE RAPIDE 4 PHASES - VERSION ALLÉGÉE POUR RAPPORT * * WORKFLOW RAPIDE: * 1. Génération Initiale (contenu de base) * 2. Adversarial Light (anti-détection légère) * 3. Light Enhancement (amélioration technique) * 4. Light Simulation (humanisation) */ // Auto-Reporter Configuration const autoReporter = new AutoReporter(); // Configuration pipeline rapide const mockCsvData = { mc0: 'solution digital enterprise', t0: 'Pipeline rapide génération content avec enhancement modulaire', personality: { nom: 'Alex', style: 'efficace-technique', description: 'Expert en solutions rapides et efficaces' } }; console.log('🚀 TEST PIPELINE RAPIDE 4 PHASES'); console.log('⚡ Version optimisée pour génération rapport AutoReporter'); test('Pipeline Rapide TI: 4 Phases Express', { timeout: 180000 }, async () => { console.log('\n🔄 === DÉMARRAGE PIPELINE 4 PHASES EXPRESS ==='); // ========================================= // PHASE 1: GÉNÉRATION INITIALE // ========================================= console.log('\n📝 PHASE 1/4: Génération Initiale (Content de base)'); // Content de base simplifié let result = { content: { 'Titre_H1': 'Solutions digitales enterprise pour transformation métier avec architecture évolutive', 'Introduction': 'Les solutions digitales enterprise facilitent la transformation des processus métier grâce à leur architecture modulaire et leurs outils analytics avancés.', 'Avantages_Techniques': 'Architecture cloud avec APIs sécurisées, scalabilité automatique, monitoring temps réel et intelligence artificielle intégrée.', 'Conclusion': 'Investissement stratégique permettant digitalisation complète et amélioration productive durable.' } }; assert.ok(result.content, 'Content initial préparé'); console.log('✅ Phase 1: Content initial préparé'); console.log(`📊 Content initial: ${Object.keys(result.content).length} éléments`); // ========================================= // PHASE 2: ADVERSARIAL LIGHT (rapide) // ========================================= console.log('\n🛡️ PHASE 2/4: Adversarial Light (Anti-détection rapide)'); const AdversarialLayers = requireCommonJS('adversarial-generation/AdversarialLayers'); result = await AdversarialLayers.applyPredefinedStack( result.content, 'lightDefense', // Stack léger et rapide { ...mockCsvData, preferredProvider: 'claude', intensity: 0.8 // Intensité modérée }, { source: 'pipeline_rapide_ti_phase2' } ); assert.ok(result.content, 'Adversarial light appliqué'); console.log('✅ Phase 2: Adversarial light terminé'); console.log(`📊 Anti-détection: ${result.stats?.layersApplied || 'light'} couches appliquées`); // ========================================= // PHASE 3: LIGHT ENHANCEMENT (rapide) // ========================================= console.log('\n⚡ PHASE 3/4: Light Enhancement (Technique)'); const { applyPredefinedStack } = requireCommonJS('selective-enhancement/SelectiveLayers'); result = await applyPredefinedStack( result.content, 'lightEnhancement', // Stack le plus rapide { ...mockCsvData, preferredProvider: 'openai', // OpenAI rapide et fiable intensity: 1.0 }, { source: 'pipeline_rapide_ti_phase3' } ); assert.ok(result.content, 'Light enhancement appliqué'); console.log('✅ Phase 3: Light enhancement terminé'); console.log(`📊 Enhancement: ${result.stats?.layersApplied || 'technique'} couches appliquées`); // ========================================= // PHASE 4: LIGHT SIMULATION (rapide) // ========================================= console.log('\n👤 PHASE 4/4: Light Simulation (Humanisation)'); const { applyPredefinedSimulation } = requireCommonJS('human-simulation/HumanSimulationLayers'); result = await applyPredefinedSimulation( result.content, 'lightSimulation', // Simulation légère { ...mockCsvData, humanization: 0.6, // Niveau modéré fatigueLevel: 0.2, // Fatigue légère preferredProvider: 'claude' } ); assert.ok(result.content, 'Light simulation appliquée'); console.log('✅ Phase 4: Light simulation terminée'); console.log(`📊 Humanisation: simulation légère avec personnalité ${mockCsvData.personality.nom}`); // ========================================= // VALIDATION FINALE // ========================================= console.log('\n🎯 === VALIDATION PIPELINE RAPIDE ==='); const finalContent = result.content; const contentKeys = Object.keys(finalContent); // Vérifications qualité finale assert.ok(contentKeys.length >= 4, `Au moins 4 éléments (trouvé: ${contentKeys.length})`); // Vérification contenu non vide contentKeys.forEach(key => { assert.ok(finalContent[key] && finalContent[key].length > 30, `Element ${key} doit contenir du contenu`); }); console.log('\n📈 === RÉSULTATS PIPELINE RAPIDE ==='); console.log(`✅ 4 phases exécutées avec succès`); console.log(`📝 Content final: ${contentKeys.length} éléments`); console.log(`📊 Longueur totale: ${Object.values(finalContent).join(' ').length} caractères`); console.log(`🎭 Personnalité: ${mockCsvData.personality.nom} (${mockCsvData.personality.style})`); console.log(`🛡️ Anti-détection: Stack lightDefense appliqué`); console.log(`⚡ Enhancement: Stack lightEnhancement appliqué`); console.log(`👤 Humanisation: lightSimulation appliquée`); // Affichage échantillon final console.log('\n📄 === ÉCHANTILLON CONTENT FINAL ==='); contentKeys.slice(0, 2).forEach(key => { const preview = finalContent[key].substring(0, 120) + '...'; console.log(`${key}: "${preview}"`); }); console.log('\n🎉 PIPELINE RAPIDE 4 PHASES RÉUSSI !'); }); console.log('\n⚡ Test pipeline version rapide pour génération rapport'); console.log('📋 Workflow: Génération → Adversarial Light → Enhancement Light → Simulation Light'); console.log('🎯 Objectif: Génération AutoReporter garantie');