Skip to content
CAI
Software that uses CAICheck a score

err0r500/Clean-Architecture-in-Golang

53.6

Adequate · 21 September 2026

322

lines of production code

Go

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a Go application that implements a layered architecture, separating domain logic, use cases, and interface implementations. It provides user management capabilities, including user creation, address validation, and data persistence through concrete read/write and checker interfaces. The codebase also includes a dedicated testing suite to validate interactions between these layers and demonstrates best practices for interface-based design and error handling.

Features

Added interface testing examples with error handling and mock implementations

New Go files were added to the interfaceTesting directory to demonstrate interface usage and testing patterns. This includes an 'initial' example with a basic 'CheckOrder' function and its corresponding 'NiceInterface' mock, as well as an 'errorHandling' example that adds validation logic and error returns, paired with an 'EvilInterface' mock for testing failure scenarios. These additions provide concrete examples of how to structure interface-based code and write tests for both success and error conditions.

interfaceTesting · high confidence

Initial implementation of the interfaces layer and test suite

Added the interfaces layer to the application, introducing concrete implementations for user read/write operations (RealUserReadWriter) and address checking (RealChecker), along with dummy variants for testing. The input layer (InputLayer1) was added to demonstrate triggering use cases, and a test suite was created to validate the interaction between the interfaces and use cases.

src/interfaces · high confidence

Introduces domain and use-case layers for user management

Adds new domain and use-case files that define the User struct, address-checking interfaces, and user interactors (UserInteractor) to orchestrate use cases (UseCase1, UseCase2). Users can now interact with user-related business logic through these new layers.

src/domain, src/useCases · 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 47 → 54 (+6.3)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 100 → 100 (+0.0)
  • Architecture 69 → 69 (+0.0)
  • Maturity 52 → 55 (+2.8)
  • Readiness 24 → 36 (+11.7)
  • Security 100 → 100 (+0.0)

Resolved (6)

  • Coverage not included — suite not readable by the collector
  • Dependency hygiene not measured — no supported dependency manifest was read
  • No exposed public API
  • Test reliability not included
  • early-stage repository — too little history to judge knowledge freshness
  • single-maintainer — knowledge-concentration (bus factor) risk

New (3)

  • Documentation: no installation or build instructions (README.md)
  • Documentation: no usage examples (README.md)
  • No ADRs found

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

Survey your own repository

err0r500/Clean-Architecture-in-Golang 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 785e28043d474923e94a156d8ead9696de65dd1a — 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-fa71c66cabd8.