From 7efdd6994839d668811dc5f34466d940207d0bf4 Mon Sep 17 00:00:00 2001 From: Janis Date: Sun, 10 May 2026 22:56:57 +0200 Subject: [PATCH] refactor: update meterRegistry usage to Option type and improve formatting --- .codesight/CODESIGHT.md | 13 ++++++++----- .codesight/libs.md | 11 +++++++---- .../nowchess/account/service/AccountService.scala | 2 +- .../nowchess/account/service/ChallengeService.scala | 6 +++++- .../de/nowchess/bot/logic/AlphaBetaSearch.scala | 9 +++++---- .../nowchess/bot/service/OfficialBotService.scala | 10 +++++----- 6 files changed, 31 insertions(+), 20 deletions(-) diff --git a/.codesight/CODESIGHT.md b/.codesight/CODESIGHT.md index e890fcc..de5b518 100644 --- a/.codesight/CODESIGHT.md +++ b/.codesight/CODESIGHT.md @@ -2,7 +2,7 @@ > **Stack:** raw-http | none | unknown | scala -> 0 routes + 40 rpc | 0 models | 0 components | 163 lib files | 1 env vars | 1 middleware +> 0 routes + 40 rpc | 0 models | 0 components | 164 lib files | 1 env vars | 1 middleware > **Token savings:** this file is ~0 tokens. Without it, AI exploration would cost ~0 tokens. **Saves ~0 tokens per conversation.** --- @@ -235,7 +235,7 @@ - function rebalanceInterval - function rebalanceMinInterval - function heartbeatTtl - - _...11 more_ + - _...12 more_ - `modules/coordinator/src/main/scala/de/nowchess/coordinator/config/JacksonConfig.scala` — class JacksonConfig, function customize - `modules/coordinator/src/main/scala/de/nowchess/coordinator/config/NativeReflectionConfig.scala` — class NativeReflectionConfig - `modules/coordinator/src/main/scala/de/nowchess/coordinator/grpc/CoordinatorGrpcServer.scala` — class CoordinatorGrpcServer @@ -255,6 +255,7 @@ - _...1 more_ - `modules/coordinator/src/main/scala/de/nowchess/coordinator/service/AutoScaler.scala` - class AutoScaler + - function initMetrics - function checkAndScale - function scaleUp - function scaleDown @@ -273,12 +274,12 @@ - function watchK8sPods - `modules/coordinator/src/main/scala/de/nowchess/coordinator/service/InstanceRegistry.scala` - class InstanceRegistry + - function initMetrics - function setRedisPrefix - function getInstance - function getAllInstances - function updateInstanceFromRedis - - function markInstanceDead - - _...1 more_ + - _...3 more_ - `modules/coordinator/src/main/scala/de/nowchess/coordinator/service/LoadBalancer.scala` - class LoadBalancer - function setRedisPrefix @@ -319,7 +320,7 @@ - function context - function pendingDrawOfferBy - function currentClockState - - _...21 more_ + - _...22 more_ - `modules/core/src/main/scala/de/nowchess/chess/exception/ApiException.scala` - class ApiException - class GameNotFoundException @@ -371,6 +372,7 @@ - function generateId - `modules/core/src/main/scala/de/nowchess/chess/registry/RedisGameRegistry.scala` - class RedisGameRegistry + - function initMetrics - function generateId - function store - function get @@ -588,6 +590,7 @@ - _...6 more_ - `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` — class DefaultRules, function positionOf - `modules/security/src/main/scala/de/nowchess/security/InternalAuthFilter.scala` — class InternalAuthFilter +- `modules/security/src/main/scala/de/nowchess/security/InternalClientHeadersFactory.scala` — class InternalClientHeadersFactory - `modules/security/src/main/scala/de/nowchess/security/InternalGrpcAuthInterceptor.scala` — class InternalGrpcAuthInterceptor - `modules/security/src/main/scala/de/nowchess/security/InternalGrpcSecretClientInterceptor.scala` — class InternalGrpcSecretClientInterceptor - `modules/security/src/main/scala/de/nowchess/security/InternalSecretClientFilter.scala` — class InternalSecretClientFilter diff --git a/.codesight/libs.md b/.codesight/libs.md index 8f5f19e..2ab2f10 100644 --- a/.codesight/libs.md +++ b/.codesight/libs.md @@ -179,7 +179,7 @@ - function rebalanceInterval - function rebalanceMinInterval - function heartbeatTtl - - _...11 more_ + - _...12 more_ - `modules/coordinator/src/main/scala/de/nowchess/coordinator/config/JacksonConfig.scala` — class JacksonConfig, function customize - `modules/coordinator/src/main/scala/de/nowchess/coordinator/config/NativeReflectionConfig.scala` — class NativeReflectionConfig - `modules/coordinator/src/main/scala/de/nowchess/coordinator/grpc/CoordinatorGrpcServer.scala` — class CoordinatorGrpcServer @@ -199,6 +199,7 @@ - _...1 more_ - `modules/coordinator/src/main/scala/de/nowchess/coordinator/service/AutoScaler.scala` - class AutoScaler + - function initMetrics - function checkAndScale - function scaleUp - function scaleDown @@ -217,12 +218,12 @@ - function watchK8sPods - `modules/coordinator/src/main/scala/de/nowchess/coordinator/service/InstanceRegistry.scala` - class InstanceRegistry + - function initMetrics - function setRedisPrefix - function getInstance - function getAllInstances - function updateInstanceFromRedis - - function markInstanceDead - - _...1 more_ + - _...3 more_ - `modules/coordinator/src/main/scala/de/nowchess/coordinator/service/LoadBalancer.scala` - class LoadBalancer - function setRedisPrefix @@ -263,7 +264,7 @@ - function context - function pendingDrawOfferBy - function currentClockState - - _...21 more_ + - _...22 more_ - `modules/core/src/main/scala/de/nowchess/chess/exception/ApiException.scala` - class ApiException - class GameNotFoundException @@ -315,6 +316,7 @@ - function generateId - `modules/core/src/main/scala/de/nowchess/chess/registry/RedisGameRegistry.scala` - class RedisGameRegistry + - function initMetrics - function generateId - function store - function get @@ -532,6 +534,7 @@ - _...6 more_ - `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` — class DefaultRules, function positionOf - `modules/security/src/main/scala/de/nowchess/security/InternalAuthFilter.scala` — class InternalAuthFilter +- `modules/security/src/main/scala/de/nowchess/security/InternalClientHeadersFactory.scala` — class InternalClientHeadersFactory - `modules/security/src/main/scala/de/nowchess/security/InternalGrpcAuthInterceptor.scala` — class InternalGrpcAuthInterceptor - `modules/security/src/main/scala/de/nowchess/security/InternalGrpcSecretClientInterceptor.scala` — class InternalGrpcSecretClientInterceptor - `modules/security/src/main/scala/de/nowchess/security/InternalSecretClientFilter.scala` — class InternalSecretClientFilter diff --git a/modules/account/src/main/scala/de/nowchess/account/service/AccountService.scala b/modules/account/src/main/scala/de/nowchess/account/service/AccountService.scala index 79f1245..9afbc7c 100644 --- a/modules/account/src/main/scala/de/nowchess/account/service/AccountService.scala +++ b/modules/account/src/main/scala/de/nowchess/account/service/AccountService.scala @@ -61,7 +61,7 @@ class AccountService: def login(req: LoginRequest): Either[AccountError, String] = val result = authenticateUser(req) result match - case Right(_) => meterRegistry.counter("nowchess.auth.logins", "result", "success").increment() + case Right(_) => meterRegistry.counter("nowchess.auth.logins", "result", "success").increment() case Left(error) => meterRegistry.counter("nowchess.auth.logins", "result", "failure").increment() meterRegistry.counter("nowchess.auth.login.failures", "reason", loginFailureReason(error)).increment() diff --git a/modules/account/src/main/scala/de/nowchess/account/service/ChallengeService.scala b/modules/account/src/main/scala/de/nowchess/account/service/ChallengeService.scala index fd903fc..69019fb 100644 --- a/modules/account/src/main/scala/de/nowchess/account/service/ChallengeService.scala +++ b/modules/account/src/main/scala/de/nowchess/account/service/ChallengeService.scala @@ -118,7 +118,11 @@ class ChallengeService: result.foreach(_ => meterRegistry.counter("nowchess.challenges.declined").increment()) result - private def declineChallenge(challengeId: UUID, userId: UUID, req: DeclineRequest): Either[ChallengeError, Challenge] = + private def declineChallenge( + challengeId: UUID, + userId: UUID, + req: DeclineRequest, + ): Either[ChallengeError, Challenge] = for challenge <- challengeRepository.findById(challengeId).toRight(ChallengeError.ChallengeNotFound) _ <- Either.cond(challenge.status == ChallengeStatus.Created, (), ChallengeError.ChallengeNotActive) diff --git a/modules/official-bots/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala b/modules/official-bots/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala index dbd2360..9f690a9 100644 --- a/modules/official-bots/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala +++ b/modules/official-bots/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala @@ -15,7 +15,7 @@ final class AlphaBetaSearch( tt: TranspositionTable = TranspositionTable(), weights: Evaluation, numThreads: Int = Runtime.getRuntime.availableProcessors, - meterRegistry: MeterRegistry = null, + meterRegistry: Option[MeterRegistry] = None, ): private val INF = Int.MaxValue / 2 @@ -108,9 +108,10 @@ final class AlphaBetaSearch( result private def recordSearchMetrics(depthReached: Int): Unit = - if meterRegistry != null then - meterRegistry.summary("nowchess.bot.search.nodes").record(nodeCount.get().toDouble) - meterRegistry.summary("nowchess.bot.search.depth").record(depthReached.toDouble) + meterRegistry.foreach { mr => + mr.summary("nowchess.bot.search.nodes").record(nodeCount.get().toDouble) + mr.summary("nowchess.bot.search.depth").record(depthReached.toDouble) + } private def isOutOfTime: Boolean = System.currentTimeMillis - timeStartMs.get >= timeLimitMs.get diff --git a/modules/official-bots/src/main/scala/de/nowchess/bot/service/OfficialBotService.scala b/modules/official-bots/src/main/scala/de/nowchess/bot/service/OfficialBotService.scala index 82ad456..25c2f2d 100644 --- a/modules/official-bots/src/main/scala/de/nowchess/bot/service/OfficialBotService.scala +++ b/modules/official-bots/src/main/scala/de/nowchess/bot/service/OfficialBotService.scala @@ -19,11 +19,11 @@ import java.util.function.Consumer class OfficialBotService: // scalafix:off DisableSyntax.var - @Inject var redis: RedisDataSource = uninitialized - @Inject var redisConfig: RedisConfig = uninitialized - @Inject var objectMapper: ObjectMapper = uninitialized - @Inject var botController: BotController = uninitialized - @Inject var meterRegistry: MeterRegistry = uninitialized + @Inject var redis: RedisDataSource = uninitialized + @Inject var redisConfig: RedisConfig = uninitialized + @Inject var objectMapper: ObjectMapper = uninitialized + @Inject var botController: BotController = uninitialized + @Inject var meterRegistry: MeterRegistry = uninitialized // scalafix:on DisableSyntax.var private val terminalStatuses =