Conversation
… and profile based seed data (#33) * feat: implement PostgreSQL persistence with Flyway migrations. * feat: implement data seeder for development environment with initial locations, forklifts, and tasks. --------- Co-authored-by: Amine <medaminebahij02@gmail.com>
Co-authored-by: Amine <medaminebahij02@gmail.com>
* chore(loging): first version of logback-spring.xml * chore(loging): logged ForkliftService, LocationService and TaskService. * chore(loging): logged WarehouseDispatcherService. * chore(loging): logged GlobalExceptionHandler. --------- Co-authored-by: Amine <medaminebahij02@gmail.com>
* test(task): establish comprehensive testing suite for TaskService * test(location): establish comprehensive testing suite for LocationService. * test(forklift): establish comprehensive testing suite for ForkliftService.
) * test(location): add integration tests and configure H2 for offline testing * test(location): add integration tests for LocationController and update LocationRequest validation * test(location): add integration tests for Location integration and mapping functionality * test(forklift): add integration tests for ForkliftMapper toEntity and toResponse methods * test(forklift): add integration tests for ForkliftRepository database constraints and custom query methods * test(forklift): add integration tests for ForkliftController and implement validation error handling * test(task): add integration tests for TaskRepository including validation and custom query methods * refactor: rename project package structure to liftnexus. * test(task): add integration tests for TaskMapper toEntity and toResponse methods * test(task): add integration tests for TaskController Closes #37, #43
…stom Metrics Automation) (#40) * style: apply consistent formatting and remove unnecessary line breaks in multiple classes using spotless * feat: integrate Checkstyle for code quality checks * devops: integrate code metrics for style compliance and documentation coverage * devops: update CI configuration to include devops branches for push events * devops: update CI configuration to generate dynamic badges for develop, main and devops branches * devops: enhance CI configuration for comprehensive code analysis and documentation coverage * devops: refine CI pipeline for improved documentation coverage and badge updates * devops: enhance CI pipeline with caching for Maven dependencies and improve coverage calculation * devops: update badge URLs in README for code style and documentation coverage * devops: integrate JaCoCo test coverage tracking and enhance badge generation in CI pipeline * devops: fixed doc coverage badge. Closes #40, #45
…order package (#50) * refactor: rename Task to TransportOrder and update related components * refactor: rename Task to TransportOrder and update related tests and services * chore(tests): improve formatting and readability in TransportOrderControllerTest and TransportOrderServiceTest closes #50, #52
…vs twin asset) (#54) * refactor(forklift): enhance Forklift entity with new attributes and validation * refactor(forklift): separate concerns by introducing ForkliftTypeService, ForkliftTypeController and enhancing Forklift service methods * refactor(forklift): improve ForkliftType mapping and add tests for ForkliftTypeService and ForkliftTypeController closes #54, #55
* feat(constraints): implement forklift capacity constraint and associated tests * feat(constraints): implement forklift travel distance constraint and associated tests * refactor(constraints): improve formatting and readability of forklift capacity and travel distance constraints * feat(constraints): implement transport order equipment requirement constraint and associated tests closes #59
…rastructure (#60) * feat(constraints): integrated implemented constraints into WarehouseConstraintProvider * feat(constraints): add unit tests of the WarehouseConstraintProvider * feat(planning): implemented buildCurrentState function in WarehouseDispatcherService that represents the state of the warehouse * feat(planning): implement DispatchJob entity and repository for job management * feat(dispatch): implement terminateOptimizationJob method to abort active jobs * feat(optimization): implemented a saveFinalSolution functionality in the WarehouseDispatcherService * feat(tests): add unit tests for saveFinalSolution in WarehouseDispatcherService * feat(tests): add unit tests for saveFinalSolution in WarehouseDispatcherService closes #61
* feat: add OpenAPI configuration and update project metadata in pom.xml * chore: add MIT License file * chore: add .gitignore file to exclude build artifacts and IDE settings * chore: update license from MIT to Apache License 2.0 in LICENSE and pom.xml * chore: update copyright information in LICENSE and pom.xml * chore: update issue templates for bug reports, features, and documentation * chore: format OpenApiConfig.java for improved readability closes #64
…r public release (#65) * feat: enhance README with project overview, installation instructions, and usage guidelines * docs(readme): update README with detailed roadmap and contributing guidelines * docs(architecture): add detailed architecture document for Lift Nexus API * docs(contributing): add contributing guidelines for Lift Nexus API Project closes #66
…#30) * feat(exception-handling): implemented multiple BAD Request cases not handled by the GloablExceptionHandler. * feat(exception-handling): implement global exception handling framework with custom error codes * feat(exception-handling): add custom exceptions for forklift domain and update error handling * feat(exception-handling): add LoadUnit domain exceptions and integrate with existing error handling * feat(exception-handling): replace ResourceNotFoundException with LoadUnitNotFoundException and update related tests * feat(exception-handling): add LoadUnitExceptionHandler for handling LoadUnitDomainException * feat(exception-handling): add StorageBin domain exceptions and integrate with error handling * feat(exception-handling): implement TransportOrder domain exceptions and update error handling * feat(exception-handling): add DispatchJob domain exceptions and integrate with error handling * feat(exception-handling): refine exception handling and improve code formatting * feat(exception-handling): refine exception handling and improve code formatting * feat(exception-handling): fixed some errors related to exception handling. closes #68
* docs(forklift): written the code of the ForkliftService. * docs(forklift): written doc of the ForkliftTypeService. * docs(forklift): written doc of the LoadUnitService. * docs: written doc of the StorageBinService and TransportOrderService * docs(planning): written doc of the WarehouseDispatcherService. * docs: enhanced coding style. closes #70
* feat: implement Schema Validation of DispatchJob * refactor: applied spotless closes #72
* test: migrate from H2 to Testcontainers with real PostgreSQL 16 Replace the H2 in-memory database with Testcontainers-backed PostgreSQL for all integration tests, ensuring tests run against the same database engine as production. * ci: added timeout of 15 minutes for the run of tests. * test: remove @activeprofiles("test") from pure mock tests * refact: fixed formating of the code closes #76
* ci: skip container reuse on CI and let Ryuk manage cleanup
…yed website for documentation (#87) * docs: updated README.md to reflect the current state of project with a detailed table for the roadmap. * chore: added new logo shown in README.md * docs: updated the design of the index.html and moved assets to the docs. * devops: updated page deployement in CI. * devops: try at redeploying documentation. * devops: added exception to the deployment of docs in the devops. * docs: added first running version of mkdocs documentation. * devops: added caching to pip installations in the ci pipeline * docs: wrote the first version of the index in the documentation * ci: fixed problem with caching python libraries needed for the documentation * docs(readme): added urls to some of the badges. * docs(readme): updated the urls in the README. * docs: added github logo to check repo button * ci: added custom domain to the documentation page of the project * docs: moved the architecture.md to the documentation website and wrote a clean personal one explaining clearly the architecture decisions
* ci: move JaCoCo coverage parsing to Python script * ci: move JavaDoc coverage parsing to Python script * ci: move page preparing of the project to bash script * fix(ci): generation and deployment of javadoc * ci: split the pipeline into multiple gates * ci: added preview and dev websites to the pipeline deployment.
* docs(index): improve MkDocs overview navigation * docs: add project overview page * docs: clarify current MVP limitations * docs: clarify current domail model * docs: add project roadmap * docs: document current solver constraints * docs: docs: describe testing strategy * fix(docs): some current inconsistencies in the documentation * docs: added explaination of the api-usage
* ci: disable checkstyle for v0.1.0 release * docs: removed the checkstyle badge from the README
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR prepares Lift Nexus API v0.1.0, the first stable portfolio release of the static warehouse dispatching MVP.
Changes
Finalized README, CHANGELOG, documentation, roadmap, and release metadata.
Added API usage/demo documentation and a short README demo GIF.
Set project/OpenAPI version to
0.1.0.Added Maven Wrapper files for reproducible local builds.
Removed unreliable public doc-coverage/Surefire presentation.
Kept Checkstyle disabled for
v0.1.0; it will be reintroduced later.Fixed solver demo workflow:
Updated planning tests/mocks to match the final solver persistence flow.
Scope
v0.1.0is a portfolio MVP, not a production WMS. It supports static one-shot dispatching with seeded data, asynchronous dispatch jobs, Timefold-based assignment planning, Docker Compose setup, tests, CI, and documentation.Validation