Added GET /api/v1/supplements/filters returning distinct categories,
brands, and countries. Placed before /{id} mapping so Spring MVC
matches the exact path first. Previously "filters" was parsed as UUID,
causing IllegalArgumentException -> 500.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Supplement and Ingredient entities with UUID primary keys
- CRUD REST API with pagination, filtering, and full-text search
- Liquibase migrations with PostgreSQL tsvector full-text index
- SpringDoc OpenAPI documentation
- RFC 7807 Problem Details error handling
- Unit tests for service, mapper, and controller layers (23 tests)
- Dockerfile (multi-stage) and docker-compose.yaml for local dev
- Application profiles: default, dev, prod