Skip to content
CAI
Software that uses CAICheck a score

ivanpaulovich/ddd-tdd-rich-domain-model-dojo-kata

56.8

Adequate · 21 September 2026

314

lines of production code

C#

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a .NET Standard-based virtual wallet service built on Domain-Driven Design principles, managing customer accounts, deposits, withdrawals, and closures. It implements a layered architecture with distinct domain and application components, supported by comprehensive unit testing and static code analysis configurations.

Features

Initial commit: .NET Standard project with DDD patterns and unit tests

The repository is initialized with a .NET Standard solution structure implementing Domain-Driven Design (DDD) patterns, including Aggregate Roots, Entities, and Value Objects. The project includes a Virtual Wallet domain model with use cases for managing customer accounts, deposits, withdrawals, and account closures. The solution is configured for .NET Core 3.1 with xUnit for testing, and the README provides instructions for cloning, compiling, and running tests.

(repo-wide) · high confidence

Initial release of Application and Domain layers

Introduced the foundational structure for the application and domain layers, including the \DomainException\ base class, value objects for \Money\ and \SSN\ with their respective validation logic, and boundary interfaces for use cases and output ports. This establishes the core domain model and application service contracts.

Application, src/Application, src/Domain · high confidence

Test coverage

Added unit tests for the Register use case

Added unit tests for the Register use case, including a test case that verifies an exception is thrown when null input is provided. Additionally, a new ruleset file was added to configure code analysis rules for the UnitTests project, enabling specific Microsoft and StyleCop analyzers.

test · high confidence

Dependencies

Initial .NET project structure and dependencies

Introduced the initial .NET project structure for the Application, Domain, and UnitTests layers. The Application and Domain projects target netstandard2.1 with C\# 8.0 and nullable reference types enabled, both referencing the StyleCop.Analyzers package. The UnitTests project targets netcoreapp3.1 and includes xUnit, Microsoft.NET.Test.Sdk, and StyleCop.Analyzers, establishing the foundational build configuration and static analysis rules for the codebase.

(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 83 → 57 (-26.5)
  • Rubric changed (rubric-2026.08.18 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 85 → 85 (+0.0)
  • Architecture 98 → 98 (+0.0)
  • Maturity 76 → 53 (-22.9)
  • Readiness 97 → 42 (-55.9)
  • Security 94 → 88 (-5.5)

Resolved (4)

  • No exposed public API
  • Test runner surfaced no tests
  • no production source files with tracked history to analyse
  • single-maintainer — knowledge-concentration (bus factor) risk

New (2)

  • Documentation: no installation or build instructions (README.md)
  • End-of-life runtime: .NET netcoreapp3.1

Architecture

  • Unchanged — 0 containers · 1 contexts · 0 edges

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

ivanpaulovich/ddd-tdd-rich-domain-model-dojo-kata 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 21 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 cd892cc0d19fa3fce3a41d6dcb4d2b73ca1ba754 — 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-28e75b8e3254.