AI-powered code reviewer for Java Spring Boot microservices.
Runs on every pull request. No setup. No config files.
✓ Catches critical issues · ✓ Explains why they matter · ✓ Suggests fixes instantly
Install once. MicroReview hooks into every PR automatically — no YAML, no tokens, no pipeline changes.
One click to install MicroReview on your repository. No config files, no YAML pipelines — just connect and go.
Push your Java Spring Boot changes and open a PR as usual. MicroReview activates automatically on every PR event.
Inline comments appear with problem diagnosis, AI explanation of why it matters, and a ready-to-paste fix. Clean PRs get auto-approved.
Every comment is precise, actionable, and enriched with AI explanation — not just a rule ID.
After inline comments are posted, MicroReview drops a top-level summary comment so the whole team sees the aggregate picture at a glance.
| Rule | New | Existing | Severity | Status |
|---|---|---|---|---|
| REQUEST_BODY_MISSING_VALID | 1 | 0 | 🔴 critical | 🆕 New |
| CONTROLLER_REPOSITORY_COUPLING | 1 | 0 | 🔴 critical | 🆕 New |
| MISSING_RESPONSE_STATUS_ON_EXCEPTION_HANDLER | 0 | 0 | 🔴 critical | ✅ OK |
| EXCEPTION_LOGGING_BEST_PRACTICES | 1 | 0 | 🟡 warning | 🆕 New |
| SERVICE_WRITE_MISSING_TRANSACTIONAL | 1 | 0 | 🟡 warning | 🆕 New |
| MISSING_LOGGER_DECLARATION | 1 | 0 | 🟡 warning | 🆕 New |
| NULLABLE_RESPONSE_WITHOUT_OPTIONAL | 0 | 0 | 🟡 warning | ✅ OK |
| SERVICE_WRITE_MISSING_TESTS | 1 | 0 | 🟡 warning | 🆕 New |
| HARDCODED_URL | 0 | 0 | 🟡 warning | ✅ OK |
| CONTROLLER_METHOD_NAMING | 0 | 0 | 🔵 info | ✅ OK |
@Slf4j before adding log statements to enable structured logging.Focused on the patterns that cause real production incidents in microservice architectures.
From static analysis to AI-powered explanations and automatic PR decisions.
Lightweight TypeScript backend, GitHub-native integration, and the latest GPT-4.1 model for AI enrichment.
@RequestBodyis missing the@Validannotation. Bean Validation constraints onUserRegistrationRequestwill be silently ignored.@Valid, Spring will deserialise the request body but skip all JSR-380 constraint checks (@NotNull,@Email,@Size, …). This means invalid payloads — such as an empty email or a password shorter than 8 characters — reach your service layer and database, bypassing your validation contract entirely. In a registration flow this can lead to corrupt user records, downstream NullPointerExceptions, and a false sense of security.@Validimmediately before@RequestBody:400 Bad Requestwith field-level error details when validation fails — no extra code needed.