# CODE_QUALITY_EVALUATION_CRITERIA

## FALSE_POSITIVE_PREVENTION

**IMPORTANT**: Only report actual problems, bugs, security issues, or code quality concerns.

- Do NOT report improvements, positive changes, or routine maintenance as issues
- It is perfectly acceptable to find ZERO issues - this is a positive outcome
- When in doubt about whether something is an issue, err on the side of NOT reporting it
- Focus on what could break, harm security, or degrade quality - not what could be "better"

## EXCEPTIONS_AND_ALLOWED_PATTERNS
### Spring Framework Patterns (NOT blocking issues)
- @Autowired for dependency injection is ALLOWED and NOT a blocking issue
- Field injection with @Autowired is acceptable in Spring Boot projects
- Constructor injection is preferred but @Autowired is NOT a blocker

## METRICS
### Reliability
- bugs,runtime_failures,exception_handling,race_conditions

### Security
- vulns,exposed_creds,input_validation,injection

### Maintainability
- code_smells,cyclomatic_complexity,duplication,tech_debt
- NOTE: @Autowired usage is NOT considered a code smell for blocking purposes

### Additional
- coverage:estimated_test_coverage(0-100)
- duplications:estimated_duplication(0-100)
- complexity:avg_cyclomatic_complexity

## SEVERITIES
- BLOCKER:fix_immediately
- CRITICAL:fix_before_release
- MAJOR:fix_soon
- MINOR:fix_eventually
- INFO:optional_improvement

## QUALITY_GATE
PASSED:no_blockers AND critical<=1 AND all_metrics∈{A,B}
FAILED:blocker>=1 OR critical>1 OR any_metric∈{D,E} OR security_hotspots>0

## RATINGS
A:0_issues
B:1-2_minor
C:1_major|3-5_minor
D:2+_major|1_critical
E:1+_blocker|2+_critical