Skip to content
CAI
Software that uses CAICheck a score

mehdihadeli/Go-MediatR

68.7

Adequate · 21 September 2026

653

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 implementation of the MediatR library, providing a mediator pattern for handling requests, commands, and notifications with support for pipeline behaviors and thread-safe handler registration. It serves as a reusable library for CQRS-style architectures, though the specific CQRS example application demonstrating its use has been removed. The codebase primarily consists of the core library and its associated tests, with dependencies managed via Go modules.

Features

Introduce Go MediatR library with request/response and notification handling

The Go MediatR library is introduced, providing a mediator pattern implementation for Go inspired by the .NET MediatR library. It supports request/response message handling for single-handler scenarios (commands/queries) and notification broadcasting for multiple handlers (events). The library includes thread-safe handler registration, pipeline behaviors for cross-cutting concerns, and comprehensive test coverage. The old \mediator.go\ file has been removed and replaced with the new \mediatr.go\ implementation.

(repo-wide) · high confidence

Removals

Removed CQRS example implementation

The CQRS example application and its associated handler logic have been removed from the codebase. This includes the main entry point for the service and the specific handler for creating products, effectively removing this example from the repository.

examples · high confidence

Behavioural changes

Refactor CQRS example to separate MediatR package

The CQRS example application has been refactored to separate the MediatR package, moving the example code into an internal directory structure. This includes renaming and reorganizing the product creation and retrieval features, updating import paths to use 'cqrsexample' as the module name, and restructuring the command and query handlers to align with the new internal package layout. The change also includes updates to the API controllers and route mappings to reflect the new internal package paths.

_internal, internal/examples/cqrs\_example/internal/products/features/creating\_product, internal/examples/cqrs\_example/internal/products/features/getting\_product\_by\id · high confidence

Dependencies

Updated Go module dependencies and configuration

The \go.mod\ file was updated to Go version 1.24, and the module name was changed to \github.com/mehdihadeli/go-mediatr\. The dependency list was significantly reduced, removing several indirect dependencies such as \go-playground/validator\, \labstack/echo\, and various \go-openapi\ packages, while adding \github.com/stretchr/testify\ and \github.com/rogpeppe/go-internal\ as direct or indirect dependencies.

(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

This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.

Score

  • CAI 64 → 69 (+5.0)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 100 → 100 (+0.0)
  • Architecture 100 → 95 (-5.2)
  • Maturity 53 → 45 (-8.4)
  • Readiness 58 → 93 (+35.7)
  • Security 72 → 83 (+10.7)
  • Event-Driven 100 → 100 (+0.0)

Resolved (13)

  • Coverage not included — suite not readable by the collector
  • Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • Medium CVE: GO-2026-4601 (go.mod)
  • No exposed public API
  • Off-boarding risk: anonymized user #1
  • Test reliability not included

New (23)

  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • Medium CVE: GO-2026-4601 (go.mod)
  • Medium: security finding (details withheld)
  • Medium: security finding (details withheld)
  • Medium: security finding (details withheld)
  • Medium: security finding (details withheld)
  • Medium: security finding (details withheld)
  • Orphaned files with no living knowledge
  • Outdated: github.com/labstack/echo/v4
  • Outdated: github.com/stretchr/testify
  • …and 3 more

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

Survey your own repository

mehdihadeli/Go-MediatR 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 259e2610a2bc588935e50753b1d4fc8de3b7879b — 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.