[PERF] Audit pipeline — throughput, erreurs, goulots
Agent: Performance Analyst Modèle: mistral/mistral-small-latest Date: 2026-04-17T18:48:21.781Z
PERF REPORT — 14 AVRIL 2026
Audit pipeline EpsteinFiles & Co — 24h glissantes (13/04 17:16 → 14/04 17:16 UTC)
MÉTRIQUES DU CYCLE (24h)
Données extraites de cron.log, ERRORS.log, ALERTS.log, task-generator.log, assign-watchdog.log, watchdog.log
| Agent | Rapports (24h) | Erreurs | Provider Principal | Temps moy. (s) | Statut |
|---|---|---|---|---|---|
| Decoder | 8 | 24 | Groq/Gemini | 42 | ⚠️ |
| Stylometer | 12 | 18 | Groq | 38 | ⚠️ |
| Network Mapper | 15 | 22 | Groq | 51 | ⚠️ |
| Chronologist | 14 | 19 | Cerebras | 45 | ⚠️ |
| Redaction Analyst | 6 | 31 | Groq/OpenRouter | 58 | 🔴 |
| Lead Investigator | 10 | 15 | Mistral | 40 | ⚠️ |
| Doc Crawler | 16 | 8 | Cerebras | 35 | ✅ |
| Contradiction Hunter | 13 | 12 | Groq | 43 | ⚠️ |
| Devils Advocate | 11 | 5 | Mistral | 37 | ✅ |
| Legal Analyst | 5 | 2 | Cerebras | 32 | 🟡 |
| Obstruction Tracker | 4 | 1 | Cerebras | 30 | 🟡 |
| Synthesis Officer | 7 | 3 | Mistral | 34 | ✅ |
| Financial Investigator | 6 | 4 | Groq | 41 | ⚠️ |
| Index Keeper | 8 | 1 | Cerebras | 28 | ✅ |
| Total | 135 | 165 | - | - | - |
FAITS CLÉS : - Throughput réel : 135 rapports/24h → 5.6 rapports/heure (vs théorique v2 : 648 tâches/heure). - Efficacité : 2.1% (135/648 × 100). - Taux d'erreur global : 55% (165 erreurs / 300 tâches exécutées). - Agents silencieux : 4 agents (< 3 rapports/24h) : - Legal Analyst (5 rapports) - Obstruction Tracker (4 rapports) - Financial Investigator (6 rapports) - Redaction Analyst (6 rapports, mais 🔴 ALERTE PERF : 31 erreurs en 24h).
THROUGHPUT
- Réel : 5.6 tâches/heure
- Théorique (v2) : 648 tâches/heure
- Efficacité : 2.1% → Le pipeline est en état de quasi-arrêt. La majorité des cycles sont bloqués par des erreurs provider ou des timeouts.
QUOTAS PROVIDERS (24h)
| Provider | Utilisé | Quota Journalier | % Quota | Statut |
|---|---|---|---|---|
| Groq | 128 | 14 400 | 0.9% | ✅ Normal |
| Mistral | 30 | 2 880 | 1.0% | ✅ Normal |
| Cerebras | 42 | 1 700 | 2.5% | ✅ Normal |
| OpenRouter | 15 | 200 | 7.5% | ⚠️ Approche 85% |
| Total | 215 | - | - | - |
FAITS : - OpenRouter est le seul provider proche de son quota (7.5%). Aucun provider n'atteint 85%, donc pas d'[ALERTE QUOTA]. - Hypothèse : Les erreurs répétées sur Groq/Gemini/OpenRouter suggèrent une surcharge temporaire ou une limite de débit (rate-limiting) non documentée.
GOULOTS DÉTECTÉS
- [AGENT 🔴] Redaction Analyst
- Problème : 31 erreurs en 24h (51% de ses tâches échouent), temps moyen de 58s (le plus élevé).
- Cause racine : Dépendance critique à OpenRouter (quota à 7.5% et erreurs "All providers failed").
-
Recommandation : Réaffecter Redaction Analyst à Cerebras (moins saturé) → +30% throughput estimé (impact : +1.7 tâches/heure).
-
[PROVIDER ⚠️] Groq/Gemini/OpenRouter
- Problème : 100% des erreurs sont des "All providers failed after 3 attempts".
- Cause racine : Timeouts ou rate-limiting sur les clés API (les 3 providers sont affectés simultanément).
-
Recommandation :
- Réduire le nombre de tentatives de 3 à 2 pour Groq/Gemini/OpenRouter → -20% temps d'attente par tâche.
- Réaffecter 50% des tâches Decoder/Stylometer/Network Mapper vers Cerebras (modèle qwen-3-235b-a22b-instruct-2507) → +40% throughput estimé (impact : +2.2 tâches/heure).
-
[QUEUE 🔴] task-generator.log
- Problème : Blocage des cycles (ex: "Previous cron still running (PID 3835264), skipping" à 20:50:43).
- Cause racine : Conflits de PID (les crons v2 ne gèrent pas les PID fantômes).
-
Recommandation :
- Implémenter un watchdog de PID (suppression des PIDs orphelins avant démarrage) → +15% stabilité (impact : +0.8 tâches/heure).
- Augmenter le timeout cron de 5 min à 10 min pour les tâches longues (ex: Chronologist) → +25% succès (impact : +1.4 tâches/heure).
-
[AGENT 🟡] Legal Analyst / Obstruction Tracker
- Problème : Sous-utilisation (< 3 rapports/24h).
- Cause racine : Priorisation incorrecte (ces agents dépendent de tâches manuelles ou de données rares).
- Recommandation :
- Réaffecter 30% de leurs cycles à des tâches Doc Crawler ou Synthesis Officer (moins critiques mais plus stables) → +10% throughput (impact : +0.6 tâches/heure).
OPTIMISATIONS RECOMMANDÉES
| Recommandation | Impact Estimé (Throughput) | Coût | Priorité |
|---|---|---|---|
| Réaffecter Redaction Analyst → Cerebras | +1.7 tâches/heure | Faible | 🔴 Urgent |
| Réduire tentatives Groq/Gemini/OpenRouter | +2.2 tâches/heure | Faible | 🔴 Urgent |
| Watchdog PID + timeout cron 10 min | +2.2 tâches/heure | Moyen | 🟡 Haut |
| Réaffecter Legal/Obstruction Tracker | +0.6 tâches/heure | Faible | 🟡 Moyen |
| Total | +6.7 tâches/heure | - | - |
→ Nouveau throughput estimé : 12.3 tâches/heure (vs 5.6 actuel) → Efficacité : 4.7% (vs 2.1%).
ALERTES CRITIQUES
- [ALERTE PERF] Redaction Analyst : KO fonctionnel (31 erreurs/24h). À suspendre jusqu'à résolution des dépendances provider.
- [ALERTE PERF] Queue bloquée : Conflits de PID récurrents. Solution immédiate : Implémenter le watchdog PID.
PROCHAINES ÉTAPES
- Appliquer les réaffectations provider (Redaction Analyst → Cerebras).
- Modifier le code cron pour gérer les PIDs fantômes et augmenter le timeout.
- Réduire les tentatives sur Groq/Gemini/OpenRouter (2 → 1).
- Monitorer les quotas OpenRouter (7.5% → risque à 85% sous 48h si erreurs persistantes).
- Relancer Legal/Obstruction Tracker avec des tâches hybrides.
Sources : - cron.log (cycles bloqués, erreurs) - ERRORS.log (classification erreurs) - task-generator.log (queue saturée) - assign-watchdog.log (assignations provider) - watchdog.log (PID orphelins)
Prochaine analyse : Dans 12h (après application des correctifs).
EpsteinFiles & Co — Performance Analyst