@@ -44,17 +44,29 @@ Release names follow the **historic football clubs** naming convention (A–Z):
4444
4545### Changed
4646
47+ - Refactor ` /pre-release ` Phase 2: inline build and test steps directly
48+ (` ./mvnw clean install ` , ` docker compose build ` ) instead of delegating to
49+ ` /pre-commit ` ; move CodeRabbit review to run against the uncommitted CHANGELOG
50+ diff; separate commit-message approval from the actual commit so checks run
51+ in between
52+
53+ ### Fixed
54+
55+ ### Removed
56+
57+ ---
58+
59+ ## [ 2.0.2 - Borussia Dortmund] - 2026-04-27
60+
61+ ### Changed
62+
4763- Return ` 422 Unprocessable Entity ` for field validation failures (` @Valid `
4864 constraint violations and squad number mismatch) instead of ` 400 Bad Request ` ;
4965 reserve ` 400 ` for genuinely malformed requests (unparseable JSON, wrong
5066 ` Content-Type ` ); introduce ` GlobalExceptionHandler ` (` @ControllerAdvice ` ) to
5167 intercept ` MethodArgumentNotValidException ` ; update OpenAPI ` @ApiResponse `
5268 annotations and test assertions accordingly (#319 )
5369
54- ### Fixed
55-
56- ### Removed
57-
5870---
5971
6072## [ 2.0.1 - Chelsea] - 2026-04-11
@@ -164,7 +176,8 @@ Initial release. See [README.md](README.md) for complete feature list and docume
164176
165177-->
166178
167- [ Unreleased ] : https://github.com/nanotaboada/java.samples.spring.boot/compare/v2.0.1-chelsea...HEAD
179+ [ Unreleased ] : https://github.com/nanotaboada/java.samples.spring.boot/compare/v2.0.2-dortmund...HEAD
180+ [ 2.0.2 - Borussia Dortmund ] : https://github.com/nanotaboada/java.samples.spring.boot/compare/v2.0.1-chelsea...v2.0.2-dortmund
168181[ 2.0.1 - Chelsea ] : https://github.com/nanotaboada/java.samples.spring.boot/compare/v2.0.0-barcelona...v2.0.1-chelsea
169182[ 2.0.0 - Barcelona ] : https://github.com/nanotaboada/java.samples.spring.boot/compare/v1.0.0-arsenal...v2.0.0-barcelona
170183[ 1.0.0 - Arsenal ] : https://github.com/nanotaboada/java.samples.spring.boot/releases/tag/v1.0.0-arsenal
0 commit comments