## 🎯 Nouveau système d'erreurs graduées (architecture SmartTouch) ### Architecture procédurale intelligente : - **3 niveaux de gravité** : Légère (50%) → Moyenne (30%) → Grave (10%) - **14 types d'erreurs** réalistes et subtiles - **Sélection procédurale** selon contexte (longueur, technique, heure) - **Distribution contrôlée** : max 1 grave, 2 moyennes, 3 légères par article ### 1. Erreurs GRAVES (10% articles max) : - Accord sujet-verbe : "ils sont" → "ils est" - Mot manquant : "pour garantir la qualité" → "pour garantir qualité" - Double mot : "pour garantir" → "pour pour garantir" - Négation oubliée : "n'est pas" → "est pas" ### 2. Erreurs MOYENNES (30% articles) : - Accord pluriel : "plaques résistantes" → "plaques résistant" - Virgule manquante : "Ainsi, il" → "Ainsi il" - Registre inapproprié : "Par conséquent" → "Du coup" - Préposition incorrecte : "résistant aux" → "résistant des" - Connecteur illogique : "cependant" → "donc" ### 3. Erreurs LÉGÈRES (50% articles) : - Double espace : "de votre" → "de votre" - Trait d'union : "c'est-à-dire" → "c'est à dire" - Espace ponctuation : "qualité ?" → "qualité?" - Majuscule : "Toutenplaque" → "toutenplaque" - Apostrophe droite : "l'article" → "l'article" ## ✅ Système anti-répétition complet : ### Corrections critiques : - **HumanSimulationTracker.js** : Tracker centralisé global - **Word boundaries (\b)** sur TOUS les regex → FIX "maison" → "néanmoinson" - **Protection 30+ expressions idiomatiques** françaises - **Anti-répétition** : max 2× même mot, jamais 2× même développement - **Diversification** : 48 variantes (hésitations, développements, connecteurs) ### Nouvelle structure (comme SmartTouch) : ``` lib/human-simulation/ ├── error-profiles/ (NOUVEAU) │ ├── ErrorProfiles.js (définitions + probabilités) │ ├── ErrorGrave.js (10% articles) │ ├── ErrorMoyenne.js (30% articles) │ ├── ErrorLegere.js (50% articles) │ └── ErrorSelector.js (sélection procédurale) ├── HumanSimulationCore.js (orchestrateur) ├── HumanSimulationTracker.js (anti-répétition) └── [autres modules] ``` ## 🔄 Remplace ancien système : - ❌ SpellingErrors.js (basique, répétitif, "et" → "." × 8) - ✅ error-profiles/ (gradué, procédural, intelligent, diversifié) ## 🎲 Fonctionnalités procédurales : - Analyse contexte : longueur texte, complexité technique, heure rédaction - Multiplicateurs adaptatifs selon contexte - Conditions application intelligentes - Tracking global par batch (respecte limites 10%/30%/50%) ## 📊 Résultats validation : Sur 100 articles → ~40-50 avec erreurs subtiles et diverses (plus de spam répétitif) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
60 lines
3.0 KiB
JSON
60 lines
3.0 KiB
JSON
{
|
|
"name": "seo-generator-server",
|
|
"version": "1.0.0",
|
|
"description": "Hello World SEO Generator",
|
|
"main": "server.js",
|
|
"scripts": {
|
|
"start": "node server.js",
|
|
"manual": "node server.js --mode=manual",
|
|
"auto": "node server.js --mode=auto",
|
|
"dev": "node server.js",
|
|
"test:llm": "cross-env TEST_LLM_HOOKS=1 node --test tests/llm/*.test.js",
|
|
"test:smoke": "node --test tests/smoke/*.test.js",
|
|
"test:content": "node --test tests/content/*.test.js",
|
|
"test:integration": "node --test tests/integration/*.test.js",
|
|
"test:all": "node tests/test-runner.js",
|
|
"test:light": "node tests/test-runner-light.js",
|
|
"test:basic": "node --test tests/basic-validation.test.js",
|
|
"test:all-simple": "npm run test:smoke && npm run test:llm && npm run test:content && npm run test:integration",
|
|
"test:systematic": "node tests/runners/SystematicTestRunner.js",
|
|
"test:systematic:quick": "node tests/runners/SystematicTestRunner.js --quick",
|
|
"test:generate": "node tests/systematic/ModuleTestGenerator.js",
|
|
"test:dashboard": "node tests/dashboard/TestDashboardServer.js",
|
|
"test:ai-validation": "node -e \"const {AIContentValidator} = require('./tests/validators/AIContentValidator'); AIContentValidator.quickValidate('Test de validation rapide du contenu généré automatiquement par IA').then(r => console.log('Validation:', r))\"",
|
|
"test:validate-system": "node tests/test-validation-complete.js",
|
|
"test:inject-reporter": "node tools/inject-auto-reporter.js",
|
|
"test:all-with-reporter": "node tests/run-all-tests-with-reporter.js",
|
|
"test:real": "node tests/integration/run-integration-tests.js",
|
|
"test:critical": "node tests/integration/run-integration-tests.js",
|
|
"test:comprehensive": "node --test tests/comprehensive-integration.test.js",
|
|
"test:modular": "node --test tests/comprehensive-integration.test.js",
|
|
"test:fast-ti": "node --test tests/fast-integration.test.js",
|
|
"test:integration-fast": "node --test tests/fast-integration.test.js",
|
|
"test:fast-ti-report": "node --test tests/fast-integration.test.js && echo '🎯 Rapport généré automatiquement dans reports/'",
|
|
"test:auto-report": "node --test tests/fast-ti-auto-report.test.js",
|
|
"test:production-workflow": "node --test tests/production/production-workflow.test.js",
|
|
"test:production-quick": "node --test tests/production/production-workflow-quick.test.js",
|
|
"test:production-loop": "npm run test:basic && npm run test:production-quick && echo '✅ Production ready loop validated'"
|
|
},
|
|
"dependencies": {
|
|
"aws-sdk": "^2.1692.0",
|
|
"axios": "^1.6.0",
|
|
"cors": "^2.8.5",
|
|
"dotenv": "^16.3.1",
|
|
"express": "^4.18.2",
|
|
"google-auth-library": "^10.3.0",
|
|
"google-spreadsheet": "^5.0.2",
|
|
"googleapis": "^126.0.1",
|
|
"node-fetch": "^3.3.2",
|
|
"nodemailer": "^7.0.6",
|
|
"pino": "^9.9.0",
|
|
"pino-pretty": "^13.1.1",
|
|
"undici": "^7.15.0",
|
|
"uuid": "^13.0.0",
|
|
"ws": "^8.18.3"
|
|
},
|
|
"devDependencies": {
|
|
"cross-env": "^10.0.0"
|
|
}
|
|
}
|