Draft a Plan to work with AI
step 1:
- analyze the codebase
- this application is java, springboot application, having rest API endpoints
- the project is designed to give example of circuit breaker, aspectj, mongodb, swagger, jacoco, archunit, logback
- Refer to Readme.md for more details
- It was written in 2020 using Java 14.0.2 and Spring Boot 2.3.3.RELEASE, compiled/ build using gradle 6.6
- it was intended to be a sample application to show desirable quality control features typically anticipated in an production ready app supporting critical business features
- After analyzing this application as if you are a Senior Developer and Java Architect, write a detailed report on this application in First_Analysis.md file in root directory
step 2:
- describe a detailed step by step plan to upgrade this application to latest java and springboot versions. Write this plan in Upgrade_Plan.md file in root directory
- include in the plan upgrade to gradle version 9. This machine has java 21 installed; Append this to Upgrade_Plan.md file in root directory
step 3:
- describe a separate and detailed step by step plan to upgrade circuitbreaker to use resiliency4j. Write this plan in Upgrade_CircuitBreaker_Plan.md file in root directory
step 4:
- describe a detailed step by step plan to change the mongodb database to use latest H2 in-memory database. Write this plan in Upgrade_H2_Plan.md file in root directory
step 5:
- using the repository classes and model, create controller endpoints for Product entity. create endpoints for list existing products, create new product, update existing product, delete existing product
step 6:
- create a frontend UI in reactjs as SPA to consume product endpoints
step 7:
- add mkdocs to the application to document the application
step 8:
- this machine has coderabbit installed. Use it to run a thorough code analysis and code review of the application and generate a report