{
  "severity": "moderado",
  "defaultFormat": "detailed",
  "defaultDepth": "deep",
  "aspects": {
    "quality": {
      "enabled": true,
      "weight": 25,
      "thresholds": {
        "cyclomaticComplexity": 10,
        "functionLength": 50,
        "nestingDepth": 4,
        "duplicateLines": 5,
        "cognitiveComplexity": 15,
        "maintainabilityIndex": 70
      },
      "rules": {
        "enforceNamingConventions": true,
        "checkCodeSmells": true,
        "analyzeCohesion": true,
        "checkSOLIDPrinciples": true,
        "detectAntiPatterns": true
      }
    },
    "architecture": {
      "enabled": true,
      "weight": 20,
      "patterns": {
        "recommended": ["mvc", "component", "service", "repository", "factory", "observer"],
        "discouraged": ["singleton", "god-object"]
      },
      "antiPatterns": {
        "detect": ["god-object", "spaghetti", "golden-hammer", "copy-paste", "magic-numbers"],
        "severity": "high"
      },
      "principles": {
        "solid": true,
        "dry": true,
        "kiss": true,
        "yagni": true,
        "separation-of-concerns": true
      }
    },
    "performance": {
      "enabled": true,
      "weight": 20,
      "focus": ["algorithms", "memory", "io", "rendering", "database"],
      "thresholds": {
        "bundleSize": "500KB",
        "loadTime": "3s",
        "memoryUsage": "50MB",
        "apiResponseTime": "200ms"
      },
      "optimizations": {
        "detectLazyLoading": true,
        "analyzeCaching": true,
        "checkMemoization": true,
        "identifyBottlenecks": true
      }
    },
    "security": {
      "enabled": true,
      "weight": 25,
      "standards": ["owasp-top10", "cwe-top25", "sans-top25"],
      "scanTypes": ["static", "dependency", "configuration", "secrets"],
      "vulnerabilities": {
        "injection": true,
        "authentication": true,
        "sensitiveDataExposure": true,
        "xmlExternalEntities": true,
        "brokenAccessControl": true,
        "securityMisconfiguration": true,
        "crossSiteScripting": true,
        "insecureDeserialization": true,
        "componentsWithVulnerabilities": true,
        "insufficientLogging": true
      }
    },
    "testing": {
      "enabled": true,
      "weight": 15,
      "targetCoverage": 80,
      "minimumCoverage": 60,
      "requiredTypes": ["unit", "integration"],
      "recommendedTypes": ["e2e", "performance", "security"],
      "qualityMetrics": {
        "assertionQuality": true,
        "testMaintainability": true,
        "edgeCaseCoverage": true,
        "mockUsage": true
      }
    },
    "documentation": {
      "enabled": true,
      "weight": 10,
      "requirements": {
        "apiDocumentation": true,
        "codeComments": true,
        "readmeCompleteness": true,
        "architectureDocumentation": false
      },
      "thresholds": {
        "minCommentRatio": 0.1,
        "maxCommentRatio": 0.3,
        "publicApiDocumentationCoverage": 90
      }
    }
  },
  "contextSettings": {
    "startup": {
      "focus": ["speed", "mvp", "flexibility", "time-to-market"],
      "relaxedStandards": ["documentation", "comprehensive-testing", "architecture"],
      "priorities": ["functionality", "performance", "security"],
      "adjustments": {
        "documentation": { "weight": 5 },
        "testing": { "targetCoverage": 60 },
        "architecture": { "weight": 15 }
      }
    },
    "enterprise": {
      "focus": ["security", "maintainability", "scalability", "compliance"],
      "strictStandards": ["all"],
      "priorities": ["security", "quality", "documentation", "testing"],
      "adjustments": {
        "security": { "weight": 30 },
        "quality": { "weight": 30 },
        "documentation": { "weight": 15 }
      }
    },
    "legacy": {
      "focus": ["refactoring", "testing", "documentation", "modernization"],
      "graduatedApproach": true,
      "priorities": ["quality", "testing", "security"],
      "adjustments": {
        "architecture": { "relaxed": true },
        "performance": { "focus": ["critical-paths"] }
      }
    },
    "greenfield": {
      "focus": ["architecture", "patterns", "scalability", "best-practices"],
      "strictStandards": ["architecture", "quality", "testing"],
      "priorities": ["architecture", "quality", "performance", "security"]
    }
  },
  "techStackSettings": {
    "react": {
      "specificRules": {
        "hooksRules": true,
        "componentPatterns": true,
        "stateManagement": true,
        "performancePatterns": true
      },
      "antiPatterns": ["prop-drilling", "god-components", "render-props-overuse"]
    },
    "node": {
      "specificRules": {
        "asyncPatterns": true,
        "errorHandling": true,
        "memoryManagement": true,
        "securityPatterns": true
      },
      "antiPatterns": ["callback-hell", "sync-in-async", "memory-leaks"]
    },
    "typescript": {
      "specificRules": {
        "typeUsage": true,
        "genericPatterns": true,
        "interfaceDesign": true,
        "strictMode": true
      }
    },
    "python": {
      "specificRules": {
        "pythonic": true,
        "pep8": true,
        "asyncPatterns": true,
        "memoryEfficiency": true
      }
    }
  },
  "reportSettings": {
    "includePositives": true,
    "includeExamples": true,
    "includeSuggestions": true,
    "includeMetrics": true,
    "includeTrends": false,
    "maxIssuesPerCategory": 10,
    "groupByFiles": true,
    "prioritizeIssues": true
  },
  "integrations": {
    "sonarqube": {
      "enabled": false,
      "serverUrl": "",
      "projectKey": ""
    },
    "eslint": {
      "enabled": true,
      "respectConfiguration": true,
      "additionalRules": true
    },
    "prettier": {
      "enabled": true,
      "formatChecking": true
    },
    "jira": {
      "enabled": false,
      "createIssuesForCritical": false,
      "projectKey": ""
    },
    "slack": {
      "enabled": false,
      "webhook": "",
      "notifyOnCritical": false
    }
  },
  "exclusions": {
    "files": [
      "node_modules/**",
      "dist/**",
      "build/**",
      "coverage/**",
      ".next/**",
      "*.min.js",
      "*.bundle.js",
      "vendor/**",
      "third-party/**"
    ],
    "patterns": [
      "*.test.*",
      "*.spec.*",
      "*.mock.*",
      "__tests__/**",
      "__mocks__/**",
      "*.config.js",
      "*.config.ts"
    ],
    "directories": [
      ".git",
      ".cache",
      "tmp",
      "temp"
    ]
  },
  "ai": {
    "useAdvancedAnalysis": true,
    "contextualSuggestions": true,
    "learningMode": true,
    "customPatternDetection": true,
    "semanticAnalysis": true,
    "crossFileAnalysis": true
  }
} 
