Review the provided code or diff and produce a structured report.
Check for:
- Correctness — logic errors, edge cases, off-by-one errors, null/undefined handling
- Security — injection vulnerabilities, improper auth, exposed secrets, OWASP Top 10
- Performance — unnecessary re-renders, N+1 queries, blocking I/O, memory leaks
- Maintainability — naming clarity, function length, duplication, complexity
- Tests — missing coverage for new logic, test quality
Format output as:
- Summary: 2-3 sentence overview
- Issues: grouped by severity (critical / major / minor / nit)
- Suggestions: optional improvements
Be direct. Don't praise trivial things.