feat(analysis): scaffold chess analysis microservice (NCS-71)
Build & Test (NowChessSystems) TeamCity build finished

Add new `modules/analysis` Quarkus microservice that proxies chess-api.com
to provide position analysis endpoints for the frontend.

- NCS-95: Scaffold analysis module with build.gradle.kts, application.yml,
  Jackson config, and native reflection registration
- NCS-96: Implement POST /api/analysis/position endpoint wrapping chess-api.com
  (ChessApiClient, AnalysisService, AnalysisResource, error handling)
- NCS-97: 13 unit/integration tests covering service logic and REST layer
  (AnalysisServiceTest, AnalysisResourceTest)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Janis Eccarius
2026-06-10 15:41:50 +02:00
parent 0a5a216032
commit 7fe1e2e4ee
21 changed files with 653 additions and 0 deletions
+4
View File
@@ -53,6 +53,10 @@ val coverageExclusions = listOf(
"**/core/src/main/scala/de/nowchess/chess/resource/GameWebSocketResource.scala",
// Coordinator infrastructure — gRPC, microservice orchestration
"**/coordinator/src/main/scala/**",
// Analysis resource/config — REST integration layer; @QuarkusTest not instrumented by Scoverage
"**/analysis/src/main/scala/de/nowchess/analysis/resource/**",
"**/analysis/src/main/scala/de/nowchess/analysis/config/**",
"**/analysis/src/main/scala/de/nowchess/analysis/error/AnalysisExceptionMapper.scala",
)
// Converts a Sonar-style glob to a scoverage regex (matched against full source path).