soooban/AxonDemo
42.7
Weak · 22 September 2026
2.1k
lines of production code
Java
primary language
7
measurements over time
What this system is
This system is a contract management service built on an event-sourcing architecture using the Axon Framework. It provides RESTful endpoints for creating, updating, and deleting contracts, with state persistence handled by a custom JPA-based event store. The application also incorporates distributed locking via Shedlock to ensure consistency across instances.
Features
Added contract management capabilities via event sourcing
Introduced a new contract management feature built on an event-sourcing architecture. This includes a REST controller for creating, updating, and deleting contracts, along with the underlying aggregate, command gateway, and query commands. The system persists contract state through a custom JPA-based event store and provides a stream-based event dispatcher to handle domain events, enabling robust state reconstruction and event-driven updates.
src/main/java · high confidence
Dependencies
Add Axon Framework, Shedlock, and Guava dependencies
The project now includes several new dependencies: the Axon Framework (axon-spring-boot-starter 4.1.1 and axon-springcloud 4.1), the Shedlock library for distributed locking (shedlock-spring and shedlock-provider-jdbc-template 2.5.0), and an updated version of Google Guava (30.0-jre or higher).
(dependencies) · medium confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 54 → 43 (-10.8)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 99 → 99 (-0.2)
- Architecture 100 → 96 (-4.3)
- Maturity 70 → 48 (-22.0)
- Readiness 18 → 15 (-2.7)
- Security 90 → 90 (+0.0)
- Domain Modelling 100 → 67 (-32.9)
- Event Sourcing 100 → 100 (+0.0)
Resolved (7)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- No exposed public API
- Scanner failed to run — not a clean result
- Test reliability not included
- early-stage repository — too few commits for a meaningful bus factor
- early-stage repository — too little history to judge knowledge freshness
New (12)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (6 lines × 2) (src/main/java/com/craftsman/eventsourcing/es/upcaster/ContractCreatedEventUpCaster.java)
- Duplicated block (7 lines × 2) (src/main/java/com/craftsman/eventsourcing/es/command/UpdateContractCommand.java)
- Duplicated block (8 lines × 2) (src/main/java/com/craftsman/eventsourcing/es/upcaster/ContractCreatedEventUpCaster.java)
- Leaked secret: high-entropy-secret (src/main/java/com/craftsman/eventsourcing/es/continuance/producer/health/DataRepairController.java)
- No ADRs found
- No assertions (empty test): contextLoads (src/test/java/com/craftsman/eventsourcing/EventSourcingApplicationTests.java)
- Scanner failed to run — not a clean result
- Scanner failed to run — not a clean result
- Test project verifies nothing: event-sourcing (src/test/java/com/craftsman/eventsourcing/EventSourcingApplicationTests.java)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
soooban/AxonDemo was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 22 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 3a690f55a76515a00670e9a4cb10d991570a1d1e — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-90d5d2fe38ee.