Some checks failed
SourceFinder CI/CD Pipeline / Code Quality & Linting (push) Has been cancelled
SourceFinder CI/CD Pipeline / Unit Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Security Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Integration Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Performance Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Code Coverage Report (push) Has been cancelled
SourceFinder CI/CD Pipeline / Build & Deployment Validation (16.x) (push) Has been cancelled
SourceFinder CI/CD Pipeline / Build & Deployment Validation (18.x) (push) Has been cancelled
SourceFinder CI/CD Pipeline / Build & Deployment Validation (20.x) (push) Has been cancelled
SourceFinder CI/CD Pipeline / Regression Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Security Audit (push) Has been cancelled
SourceFinder CI/CD Pipeline / Notify Results (push) Has been cancelled
- Architecture modulaire avec injection de dépendances - Système de scoring intelligent multi-facteurs (spécificité, fraîcheur, qualité, réutilisation) - Moteur anti-injection 4 couches (preprocessing, patterns, sémantique, pénalités) - API REST complète avec validation et rate limiting - Repository JSON avec index mémoire et backup automatique - Provider LLM modulaire pour génération de contenu - Suite de tests complète (Jest) : * Tests unitaires pour sécurité et scoring * Tests d'intégration API end-to-end * Tests de sécurité avec simulation d'attaques * Tests de performance et charge - Pipeline CI/CD avec GitHub Actions - Logging structuré et monitoring - Configuration ESLint et environnement de test 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
134 lines
4.3 KiB
JSON
134 lines
4.3 KiB
JSON
{
|
|
"id": "9d72a38d-ba8b-4c83-9e6d-8bfae9a36b74",
|
|
"title": "Besoins en santé et soins du Berger Allemand",
|
|
"content": "Le Berger Allemand nécessite des soins réguliers pour maintenir sa santé. Il est important de lui fournir une alimentation équilibrée, adaptée à son âge et à son niveau d'activité. Les visites régulières chez le vétérinaire pour des vaccinations et des contrôles de santé sont essentielles. Les Bergers Allemands sont sujets à certaines conditions de santé, telles que la dysplasie de la hanche et les problèmes de peau, il est donc crucial de surveiller leur état de santé. En outre, un exercice quotidien est nécessaire pour prévenir l'obésité et assurer leur bien-être mental. Des activités comme la marche, la course et les jeux interactifs sont recommandées.",
|
|
"category": "santé",
|
|
"keyPoints": [
|
|
"Alimentation équilibrée et adaptée",
|
|
"Visites vétérinaires régulières",
|
|
"Exercice quotidien pour le bien-être"
|
|
],
|
|
"targetAudience": "propriétaires",
|
|
"raceCode": "352-1",
|
|
"sourceType": "llm_generated",
|
|
"provider": "OpenAI",
|
|
"model": "gpt-4o-mini",
|
|
"publishDate": "2025-09-15T12:29:59.189Z",
|
|
"url": "llm://generated/d3090d48-3749-43d0-a2d8-7213f47b899e",
|
|
"scores": {
|
|
"specificity": 85,
|
|
"freshness": 100,
|
|
"quality": 80,
|
|
"reuse": 100
|
|
},
|
|
"generationMetadata": {
|
|
"originalQuery": {
|
|
"raceCode": "352-1",
|
|
"productContext": "Guide éducatif pour Berger Allemand",
|
|
"contentType": "education",
|
|
"clientId": "test-client-1"
|
|
},
|
|
"generatedAt": "2025-09-15T12:29:59.189Z",
|
|
"model": "gpt-4o-mini",
|
|
"temperature": 0.3
|
|
},
|
|
"finalScore": 57,
|
|
"specificityScore": 100,
|
|
"freshnessScore": 0,
|
|
"qualityScore": 37,
|
|
"reuseScore": 100,
|
|
"scoringDetails": {
|
|
"specificity": {
|
|
"score": 100,
|
|
"reason": "exact_race_match",
|
|
"details": "Mention exacte de la race trouvée: berger allemand",
|
|
"matchedTerms": [
|
|
"berger allemand"
|
|
]
|
|
},
|
|
"freshness": {
|
|
"score": 0,
|
|
"reason": "future_date",
|
|
"details": "Article daté du futur (1 jours)",
|
|
"ageInDays": -1,
|
|
"publishDate": "2025-09-15T12:29:59.189Z",
|
|
"searchDate": "2025-09-15T12:29:43.199Z"
|
|
},
|
|
"quality": {
|
|
"score": 37,
|
|
"reason": "unknown",
|
|
"details": "Source Source inconnue (generated) - Score de base: 30. Ajustements: +7",
|
|
"sourceInfo": {
|
|
"domain": "generated",
|
|
"sourceType": "unknown",
|
|
"baseScore": 30,
|
|
"adjustments": [
|
|
{
|
|
"type": "content_quality",
|
|
"value": 8,
|
|
"reason": "Longueur appropriée, Phrases bien structurées"
|
|
},
|
|
{
|
|
"type": "metadata_quality",
|
|
"value": 4,
|
|
"reason": "Date publication présente, URL propre"
|
|
},
|
|
{
|
|
"type": "domain_authority",
|
|
"value": -5,
|
|
"reason": "Source non référencée"
|
|
}
|
|
]
|
|
},
|
|
"qualityIndicators": {
|
|
"hasAuthor": false,
|
|
"hasPublishDate": true,
|
|
"hasMetadata": false,
|
|
"sourceType": "unknown",
|
|
"sourceCategory": "Source inconnue",
|
|
"contentLength": 708,
|
|
"isKnownSource": false
|
|
}
|
|
},
|
|
"reuse": {
|
|
"score": 100,
|
|
"reason": "never_used",
|
|
"details": "Article jamais utilisé, contenu_permanent (+5)",
|
|
"usageCount": 0,
|
|
"lastUsed": null,
|
|
"rotationStatus": "available",
|
|
"breakdown": {
|
|
"baseScore": 100,
|
|
"timeAdjustment": 0,
|
|
"contextAdjustment": 5
|
|
}
|
|
}
|
|
},
|
|
"scoringMetadata": {
|
|
"engine": "BasicScoringEngine",
|
|
"version": "1.0",
|
|
"weights": {
|
|
"specificity": 0.4,
|
|
"freshness": 0.3,
|
|
"quality": 0.2,
|
|
"reuse": 0.1
|
|
},
|
|
"calculationTime": 3,
|
|
"scoredAt": "2025-09-15T12:29:59.194Z",
|
|
"context": {
|
|
"raceCode": "352-1",
|
|
"clientId": "test-client-1",
|
|
"searchDate": "2025-09-15T12:29:43.199Z"
|
|
}
|
|
},
|
|
"scoreCategory": "fair",
|
|
"usageRecommendation": "review_needed",
|
|
"createdAt": "2025-09-15T12:29:59.225Z",
|
|
"updatedAt": "2025-09-15T12:29:59.225Z",
|
|
"_metadata": {
|
|
"version": 1,
|
|
"createdAt": "2025-09-15T12:29:59.225Z",
|
|
"updatedAt": "2025-09-15T12:29:59.225Z",
|
|
"checksum": "446f9e67"
|
|
}
|
|
} |