You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
test(store-redis): improve coverage from 77% to 84% and raise threshold to 80%
- Add test exercising buildConnection() exception path directly
- Raise minimumCoverage from 0.77 to 0.80 in store-redis/build.gradle
- Refresh all gradle.lockfiles for Java 21 compatibility
- Add CLAUDE.md with codebase guidance for Claude Code
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+
## What this repo is
6
+
7
+
`path-facilities` is a multi-module Gradle library providing facility implementations for the [MX Path SDK](https://github.com/mxenabled/path-core). Each subproject implements a facility interface from `path-core` using a specific third-party technology. The `platform` subproject is a BOM (Bill of Materials) consumed by downstream services.
8
+
9
+
**Subprojects and their facility type:**
10
+
-`store-redis` — `Store` implementation backed by Redis via Lettuce
11
+
-`store-vault` — `Store` implementation backed by HashiCorp Vault
12
+
-`encryption-service-jasypt` — `EncryptionService` using Jasypt
13
+
-`encryption-service-vault` — `EncryptionService` using Vault transit engine
14
+
-`message-broker-nats` — `MessageBroker` using NATS
15
+
-`fault-tolerant-executor-resilience4j` — `FaultTolerantExecutor` using Resilience4j (circuit breaker, bulkhead, time limiter)
16
+
-`exception-reporter-honeybadger` — `ExceptionReporter` using Honeybadger
17
+
18
+
## Code patterns
19
+
20
+
Each subproject follows the same structure:
21
+
- A main implementation class (e.g. `RedisStore`) that takes a `@Configuration`-annotated configuration POJO in its constructor
22
+
- A configuration class annotated with `@Data` (Lombok) where each field is annotated with `@ConfigurationField`
./gradlew dependencyCheckAnalyze # scan for vulnerabilities
69
+
```
70
+
71
+
## Commits and releases
72
+
73
+
Commits must follow [Conventional Commits](https://www.conventionalcommits.org/). Allowed types: `build`, `chore`, `docs`, `feat`, `fix`, `perf`, `refactor`, `revert`, `style`, `test`. Use `git cz` (commitizen) for interactive prompting after running `bin/setup`.
74
+
75
+
Releases are automated via [release-please](https://github.com/googleapis/release-please). The version in `build.gradle` and `README.md` is managed by release-please (do not manually bump it). Published to Maven Central under group `com.mx.path-facilities`.
0 commit comments