Files
proffesor-for-testing__agen…/docs/complexity-analysis-data.json
Profa bc6cac266b docs: add QE fleet analysis reports for code quality and tests
Generated comprehensive analysis using QE fleet with 4 specialized agents:
- complexity-analyzer: 1,529 issues found (429 high, 1,100 medium)
- security-analyzer: 7.8/10 score, 0 npm vulnerabilities
- quality-analyzer: Code smell inventory (1,674 any types, 33 large files)
- test-analyzer: 72/100 test quality score, 335 Math.random() instances

Reports added:
- complexity-analysis-report.md: Full complexity analysis
- complexity-analysis-data.json: Structured data for tooling
- complexity-summary.txt: ASCII summary
- security-analysis-report.md: OWASP Top 10 compliance
- TEST_QUALITY_ANALYSIS_REPORT.md: Test smells and improvements

Related: Issue #149

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 12:06:33 +00:00

304 lines
7.7 KiB
JSON

{
"metadata": {
"analysisDate": "2025-12-16",
"analyzer": "Code Complexity Analyzer Agent",
"scope": [
"src/agents/",
"src/core/",
"src/mcp/",
"src/learning/"
],
"filesAnalyzed": 397,
"version": "2.5.5"
},
"summary": {
"totalIssues": 1529,
"highSeverity": 429,
"mediumSeverity": 1100,
"qualityScore": 62,
"estimatedRefactoringHours": {
"critical": "40-50",
"high": "60-80",
"medium": "40-60",
"functionLevel": "30-40",
"total": "170-230"
}
},
"thresholds": {
"cyclomatic": {
"file": 50,
"function": 10
},
"cognitive": {
"function": 15
},
"linesOfCode": {
"file": 500,
"function": 50
}
},
"topHotspots": [
{
"rank": 1,
"file": "/workspaces/agentic-qe-cf/src/mcp/tools.ts",
"severity": "high",
"metrics": {
"lines": 4094,
"cyclomatic": 65,
"cognitive": null
},
"issues": [
"File size: 4,094 lines (threshold: 500)",
"Massive tool configuration file"
],
"recommendation": "Split into domain-specific tool modules",
"impact": "High - Central configuration affecting multiple agents",
"estimatedEffort": "4-6 hours"
},
{
"rank": 2,
"file": "/workspaces/agentic-qe-cf/src/agents/QXPartnerAgent.ts",
"severity": "high",
"metrics": {
"lines": 3102,
"cyclomatic": 508,
"cognitive": 172
},
"issues": [
"File size: 3,102 lines (threshold: 500)",
"Function generateHTMLContent(): 413 lines",
"Function apply(): 380 lines, cognitive: 172"
],
"recommendation": "Extract HTML generation, split heuristics engine, apply Strategy pattern",
"impact": "Critical - Complex QX analysis agent",
"estimatedEffort": "8-10 hours"
},
{
"rank": 3,
"file": "/workspaces/agentic-qe-cf/src/core/memory/SwarmMemoryManager.ts",
"severity": "high",
"metrics": {
"lines": 3076,
"cyclomatic": 314,
"cognitive": null
},
"issues": [
"File size: 3,076 lines (threshold: 500)",
"Function initialize(): 372 lines",
"Multiple database operations in single file"
],
"recommendation": "Extract DB schema, implement Repository pattern",
"impact": "High - Core memory coordination",
"estimatedEffort": "6-8 hours"
},
{
"rank": 4,
"file": "/workspaces/agentic-qe-cf/src/agents/TestDataArchitectAgent.ts",
"severity": "high",
"metrics": {
"lines": 2058,
"cyclomatic": 269,
"cognitive": null
},
"issues": [
"File size: 2,058 lines (threshold: 500)",
"Function introspectSQLDatabase(): 179 lines"
],
"recommendation": "Extract DB introspection, split generators by type",
"impact": "Medium - Test data generation",
"estimatedEffort": "5-6 hours"
},
{
"rank": 5,
"file": "/workspaces/agentic-qe-cf/src/agents/FlakyTestHunterAgent.ts",
"severity": "high",
"metrics": {
"lines": 1627,
"cyclomatic": 180,
"cognitive": null
},
"issues": [
"File size: 1,627 lines (threshold: 500)",
"Multiple analysis strategies in one file"
],
"recommendation": "Extract statistical analysis, split pattern detection",
"impact": "Medium - Flaky test detection",
"estimatedEffort": "4-5 hours"
},
{
"rank": 6,
"file": "/workspaces/agentic-qe-cf/src/agents/RegressionRiskAnalyzerAgent.ts",
"severity": "high",
"metrics": {
"lines": 1596,
"cyclomatic": 184,
"cognitive": null
},
"issues": [
"File size: 1,596 lines (threshold: 500)"
],
"recommendation": "Extract risk scoring algorithms, implement Visitor pattern",
"impact": "Medium - Risk analysis",
"estimatedEffort": "4-5 hours"
},
{
"rank": 7,
"file": "/workspaces/agentic-qe-cf/src/agents/TestGeneratorAgent.ts",
"severity": "high",
"metrics": {
"lines": 1591,
"cyclomatic": 220,
"cognitive": null
},
"issues": [
"File size: 1,591 lines (threshold: 500)",
"Function generateTestsWithAI(): 273 lines"
],
"recommendation": "Extract test templates, split by test type",
"impact": "High - Core test generation",
"estimatedEffort": "6-7 hours"
},
{
"rank": 8,
"file": "/workspaces/agentic-qe-cf/src/mcp/tools/qe/accessibility/scan-comprehensive.ts",
"severity": "high",
"metrics": {
"lines": 1577,
"cyclomatic": 313,
"cognitive": 249
},
"issues": [
"File size: 1,577 lines (threshold: 500)",
"Function runCustomHeuristicChecks(): 486 lines, cognitive: 249",
"Extremely high cognitive complexity"
],
"recommendation": "Extract heuristic checkers, implement Chain of Responsibility",
"impact": "High - Critical accessibility scanning",
"estimatedEffort": "8-10 hours"
},
{
"rank": 9,
"file": "/workspaces/agentic-qe-cf/src/agents/DeploymentReadinessAgent.ts",
"severity": "high",
"metrics": {
"lines": 1552,
"cyclomatic": 190,
"cognitive": null
},
"issues": [
"File size: 1,552 lines (threshold: 500)"
],
"recommendation": "Split into readiness checkers, extract reports",
"impact": "High - Deployment gating",
"estimatedEffort": "5-6 hours"
},
{
"rank": 10,
"file": "/workspaces/agentic-qe-cf/src/core/memory/UnifiedMemoryCoordinator.ts",
"severity": "high",
"metrics": {
"lines": 1502,
"cyclomatic": 174,
"cognitive": null
},
"issues": [
"File size: 1,502 lines (threshold: 500)"
],
"recommendation": "Extract vector search, apply Strategy pattern",
"impact": "High - Memory coordination",
"estimatedEffort": "6-7 hours"
}
],
"distributionByDirectory": {
"src/agents/": {
"files": 156,
"averageLOC": 487,
"issues": 687,
"percentage": 45
},
"src/mcp/": {
"files": 134,
"averageLOC": 312,
"issues": 521,
"percentage": 34
},
"src/core/": {
"files": 78,
"averageLOC": 398,
"issues": 243,
"percentage": 16
},
"src/learning/": {
"files": 29,
"averageLOC": 276,
"issues": 78,
"percentage": 5
}
},
"complexityMetricsSummary": {
"bySeverity": [
{
"severity": "high",
"count": 429,
"percentage": 28,
"avgComplexity": 147
},
{
"severity": "medium",
"count": 1100,
"percentage": 72,
"avgComplexity": 23
}
],
"byIssueType": [
{
"type": "file_size",
"count": 67,
"avgValue": 1284,
"threshold": 500,
"filesAffected": 67
},
{
"type": "cyclomatic",
"count": 487,
"avgValue": 42,
"threshold": 10,
"filesAffected": 298
},
{
"type": "cognitive",
"count": 312,
"avgValue": 28,
"threshold": 15,
"filesAffected": 187
},
{
"type": "function_length",
"count": 663,
"avgValue": 127,
"threshold": 50,
"filesAffected": 245
}
]
},
"recommendedQualityGates": {
"complexity": {
"cyclomatic": {
"file": 50,
"function": 10
},
"cognitive": {
"function": 15
}
},
"file_metrics": {
"max_lines": 500,
"function_max_lines": 50
},
"quality_score": {
"minimum": 80,
"target": 90
}
}
}