DOC
Audit omniscient 10 axes avec Sargeras
Analyser le projet complet sur 10 axes (architecture, qualité, sécurité, perf, tests, dette, a11y, docs, scalabilité, coûts)
Audit omniscient 10 axes avec Sargeras
Contexte
Vous voulez un diagnostic complet et exhaustif d’un projet : santé globale, violations, dettes, risques. Sargeras auto-détecte le stack et produit un rapport structuré sur 10 axes avec scores quantitatifs et verdict final.
Prérequis
- Projet de toute taille avec code source
- Accès Read complet sur le projet
- Pas de limite de taille (Sargeras traite scalaire)
docs/reports/directory sera créé pour rapports
Étapes
1. Invocation audit omniscient
Lancez Sargeras :
/ulk:sargeras
ou
Audit omniscient du projet
Sargeras démarre Phase 0 (Détection automatique du stack).
2. Phase 0 — Détection automatique
Sargeras exécute :
PROJECT_NAME=$(basename $(pwd))
[ -f "package.json" ] && LANG="javascript/typescript"
[ -f "next.config.ts" ] && FRAMEWORK="nextjs"
[ -f "Cargo.toml" ] && LANG="rust"
git log --oneline | wc -l
cloc . --exclude-dir=node_modules --quiet
Sortie :
=== Détection du Projet ===
🏗️ Nom : my-app
💻 Language : TypeScript/JavaScript
🎯 Framework : Next.js
📦 Package manager : npm
🗂️ Structure : Monorepo (Turbo)
📊 LOC : 45,230 lines
📝 Commits : 542
3. Phase 1-10 — Audit 10 axes
Axe 1 : Architecture (score /20)
Architecture : 14/20 ⚠️ MEDIUM
✅ Patterns identifiés
- Clean Architecture (controllers, services, repos)
- Layered separation OK
- Dependency injection (GetIt)
⚠️ Violations
- [lib/services/user_service.dart:42] Direct DB import (should inject)
- [lib/widgets/home.dart:105] Business logic in widget
- Circular dependencies detected in models/
❌ Manquements
- No SOLID violations doc
- Testing pyramid incomplete
Axe 2 : Code Quality (score /20)
Code Quality : 16/20 ✅ GOOD
Metrics:
- Cyclomatic complexity avg : 4.2 (OK, target < 5)
- Comment ratio : 18% (good)
- Naming conventions : 95% adherence
- Code duplication : 3% (acceptable)
Issues:
- [lib/models/user.dart:12] Unused variable 'deprecated_field'
- [test/widgets/user_list_test.dart:50] Long test (180 lines)
Axe 3 : Security (score /20)
Security : 11/20 ❌ HIGH RISK
Critical issues:
- [lib/config.dart:5] API key hardcoded (CRITICAL)
- [lib/api_client.dart:15] HTTP endpoint, not HTTPS (HIGH)
- [android/app/src/main/AndroidManifest.xml:3] debuggable=true (HIGH)
Medium issues:
- No certificate pinning
- SharedPreferences unencrypted
Recommendations:
[ ] Move API key to environment variables
[ ] Enable HTTPS everywhere
[ ] Use flutter_secure_storage
[ ] Implement certificate pinning
Axe 4 : Performance (score /20)
Performance : 13/20 ⚠️ MEDIUM
Frontend metrics:
- Build size : 52 MB (OK for Flutter)
- Bundle analysis : Unused code detected (2.1 MB)
- Widget rebuild inefficiencies : Provider misuse in 3 places
- Image optimization : 8 unoptimized assets
Backend (if applicable):
- Query N+1 detected : UserService.getWithPosts (5 places)
- Missing indices : users.email, posts.user_id
- Cache strategy : None (everything fresh)
Recommendations:
[ ] Remove unused dependencies
[ ] Optimize images (convert to WebP)
[ ] Add database indices
[ ] Implement Redis caching
Axe 5 : Testing (score /20)
Testing : 12/20 ⚠️ MEDIUM
Coverage : 62% (target: 80%)
- Unit tests : 45 files ✅
- Widget tests : 12 files ✅
- Integration tests : 2 files ❌ (insufficient)
- E2E tests : None ❌
Issues:
- [test/repositories/user_repo_test.dart] Tests rely on real DB
- 3 flaky tests (timing issues)
- No CI/CD test automation
Recommendations:
[ ] Add integration tests (target 10+ scenarios)
[ ] Fix flaky tests
[ ] Setup CI/CD (GitHub Actions)
[ ] Aim for 80% coverage
Axe 6 : Technical Debt (score /20)
Technical Debt : 10/20 ❌ HIGH
Debt items identified:
- [lib/old_widgets/] 3 deprecated screens (refactor timeline: next sprint)
- [lib/utils/legacy_parser.dart] Old parsing logic, 200+ LOC
- [pubspec.yaml] 8 outdated packages (flutter_web_auth, rxdart)
- [docs/] Documentation out-of-sync (last updated 8 months ago)
Debt impact:
- ~15% of code is legacy/deprecated
- Maintenance burden : 1 dev day/month
- Refactoring ROI : 2 weeks effort = 1 month maintenance saved
Timeline:
- Week 1-2 : Remove deprecated screens
- Week 3 : Upgrade packages
- Week 4 : Refactor legacy_parser
Axe 7 : Accessibility (a11y) (score /20)
Accessibility : 8/20 ❌ POOR
Issues detected:
- [lib/widgets/home.dart] No semantic labels (8 widgets)
- [lib/screens/login.dart:32] Image without alt text
- Color contrast : 3 places below WCAG AA
- Font sizes : Too small on mobile (< 14sp)
WCAG 2.1 failures:
- 1.4.3 Contrast (AA) — FAIL
- 2.4.7 Focus visible — MISSING
- 3.3.2 Labels or instructions — MISSING
Recommendations:
[ ] Add Semantics widgets (30 min)
[ ] Fix color contrast (1 hour)
[ ] Increase font sizes (30 min)
[ ] Add focus indicators (1 hour)
Axe 8 : Documentation (score /20)
Documentation : 11/20 ⚠️ MEDIUM
Files found:
- README.md : ✅ (but outdated install steps)
- CLAUDE.md : ✅ (incomplete rules/ section)
- API docs : ❌ (none, infer from code)
- Architecture : ⚠️ (vague design.md)
- Contributing : ❌ (missing)
Issues:
- Functions without docstrings : 23% of codebase
- Examples absent : APIs, complex workflows
- Diagrams : None (architecture not visual)
Recommendations:
[ ] Document top 50 public functions (2 days)
[ ] Update README with current setup (2 hours)
[ ] Add architecture diagram (4 hours)
[ ] Create CONTRIBUTING.md (3 hours)
Axe 9 : Scalability (score /20)
Scalability : 14/20 ✅ GOOD
Architecture readiness:
- Microservices potential : ✅ Good service boundaries
- Database design : ⚠️ No sharding strategy
- Caching layer : ❌ None
- Message queue : ❌ None (would need for >10K DAU)
Load testing (simulated):
- Current capacity : ~5K concurrent users (estimated)
- Bottleneck : Database connections
- Scaling strategy : Horizontal (stateless services)
Recommendations:
[ ] Add Redis/Memcached (1 week)
[ ] Implement connection pooling (3 days)
[ ] Design sharding strategy (2 weeks)
Axe 10 : Operational Readiness (score /20)
Operational Readiness : 9/20 ❌ LOW
Deployment:
- CI/CD : ❌ None
- Staging env : ❌ Manually managed
- Rollback plan : ❌ Unknown
- Monitoring : ⚠️ Basic logs only
Observability:
- Error tracking : ❌ None (Sentry, Rollbar)
- Performance monitoring : ❌ None
- Uptime monitoring : ❌ None
- Alerts : ❌ None
Documentation:
- Runbook : ❌ Missing
- Incident response : ❌ No procedure
- Backup strategy : ⚠️ Manual backups
Recommendations:
[ ] Setup GitHub Actions CI/CD (2 days)
[ ] Add Sentry for error tracking (1 day)
[ ] Create runbook & incident response (3 days)
[ ] Automate backups (2 days)
4. Synthèse et scores globaux
Sargeras produit résumé :
=== SARGERAS AUDIT REPORT ===
Generated: 2026-04-14
PROJECT : my-app (Next.js + Dart/Flutter)
LOC : 45,230
Commits : 542
Age : 18 months
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SCORES (10 AXES) : 108/200 (54%) — MEDIUM
1. Architecture : 14/20 ⚠️
2. Code Quality : 16/20 ✅
3. Security : 11/20 ❌
4. Performance : 13/20 ⚠️
5. Testing : 12/20 ⚠️
6. Technical Debt : 10/20 ❌
7. Accessibility : 8/20 ❌
8. Documentation : 11/20 ⚠️
9. Scalability : 14/20 ✅
10. Operational Ready : 9/20 ❌
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OVERALL VERDICT : PRODUCTION-READY WITH CAVEATS
✅ Can ship, but fix HIGH priority items first
⚠️ 15 CRITICAL/HIGH issues, 28 MEDIUM issues
📋 Estimated remediation time : 4-6 weeks (with 1-2 devs)
BLOCKERS (must fix before ship):
1. API key hardcoded (CRITICAL — remove immediately)
2. Missing HTTPS (HIGH — enable everywhere)
3. No CI/CD (HIGH — setup GitHub Actions)
PRIORITIES (next sprint):
1. Security : Fix API key, HTTPS, cert pinning (3 days)
2. Testing : Add integration tests, reach 80% coverage (1 week)
3. Debt : Remove deprecated code (1 week)
4. Ops : Setup CI/CD, error tracking (2 days)
5. A11y : Fix contrast, add labels (2 days)
STRENGTHS:
✅ Code quality high (16/20)
✅ Scalability architecture sound (14/20)
✅ Patterns correctly applied
WEAKNESSES:
❌ Security inadequate for production
❌ Missing observability completely
❌ Documentation behind schedule
❌ Accessibility not prioritized
Fichiers générés :
docs/reports/
├── sargeras-audit-YYYYMMDD.md (rapport complet, 40KB)
├── security-findings.json (issues détaillées)
├── remediation-plan.md (timeline et priorités)
└── metrics-timeline.csv (historique pour tracking)
Variantes
- Variante A — Quick audit : Mode
quicklance 5 axes seulement (architecture, code quality, security, testing, ops). - Variante B — Scheduled audits :
/schedule sargeras-auditpour audit automatique chaque mois. - Variante C — Specific axis : Mode
focus=securitydeepdive sécurité uniquement. - Variante D — Benchmark : Comparer scores sur plusieurs branches/versions via historical tracking.
Agents enchaînés
Flux typique : sargeras (45) omniscient → ed209 (52) deep security → blackemperor (18) mode=audit orchestration.
Troubleshooting
| Symptôme | Cause probable | Résolution |
|---|---|---|
| Détection stack incorrecte | Config files non standards | Vérifier package.json, tsconfig.json, etc. |
| Scores trop bas/hauts | Contextual thresholds | Sargeras s’ajuste, mais scores comparatifs |
| Certains axes non évalués | Pas de code pour cet axe | A11y absent en backend pur, c’est normal |
| Rapport géant (> 100KB) | Projet très volumineux | Limiter avec --max-files=500 |
Voir aussi
agents/audit/45-sargeras.md— agent completagents/audit/52-ed209.md— deep dive sécuritéagents/audit/05-vision.md— audit code détailléagents/orchestrators/18-blackemperor.md— orchestration audits