Skip to content
CAI
Software that uses CAICheck a score

ArdaByk/Mevora

50.0

Weak · 21 September 2026

810

lines of production code

C#

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

Mevora is a .NET library that implements the CQRS and Mediator patterns using Roslyn source generators to eliminate runtime reflection. It provides a compile-time dispatcher and message publishing mechanism that automatically registers and wires up request processors, message handlers, and validation pipelines. The system supports a fluent validation framework and allows for custom pipeline actions, all managed through dependency injection.

Features

Automatic registration of pipeline and processor services

The Mevora core now automatically discovers and registers service implementations for pipeline actions, request processors, message processors, and validators. This removes the need for manual service registration, as the framework scans specified assemblies to identify and wire up these components via dependency injection.

src/Mevora/Core/Configuration · medium confidence

Initial release of Mevora .NET CQRS and Mediator library

The repository now includes the initial version of Mevora, a high-performance, compile-time powered CQRS and Mediator framework for .NET that utilizes C\# Source Generators to eliminate runtime reflection overhead. The release provides a README with installation and usage instructions, updates the solution file to include the Mevora.Generators project, and configures the .gitignore file.

(repo-wide) · high confidence

Introduce source generators for request dispatching and message publishing

Added a new Roslyn-based source generator (Mevora.Generators) that automatically implements the IMevoraDispatcher interface and generates the MevoraDispatcher class. The generator scans for types implementing IRequest, IRequest\<T\>, IMessage, and their corresponding processor interfaces, then produces strongly-typed DispatchAsync and PublishAsync methods. The generated dispatcher also includes a validation pipeline that supports optional IRequestValidator implementations and executes registered IPipelineAction\<T\> or IPipelineAction\<T, TResponse\> steps before invoking the target processor.

src/Mevora.Generators · high confidence

Introduces a new validation framework with fluent context and result types

A new validation architecture is introduced in the Mevora core, featuring a generic \ValidationContext\<T\>\ that provides a fluent API for common checks such as non-empty strings, minimum length, regex patterns, and integer ranges. The framework returns a \ValidationResult\ object containing a validity flag and a list of error messages, and a \ValidationException\ is added to surface these errors as exceptions. This provides a centralized, reusable way to validate objects and collect multiple validation errors in one go.

src/Mevora/Core/Validation · high confidence

New abstraction layer for request processing and dispatching

The Mevora library introduces a new set of abstractions for handling requests, messages, and pipelines. This includes new interfaces for service registration (IServiceRegistrar), message processing (IMessageProcessor), request validation (IRequestValidator), and pipeline actions (IPipelineAction). Additionally, the existing IRequestProcessor and IRequest interfaces have been reorganized into the Abstractions/Processing and Abstractions/Requests directories, with some legacy synchronous processing interfaces removed in favor of asynchronous patterns.

src/Mevora/Abstractions · medium confidence

Behavioural changes

Added ConcurrentDictionary import to ConfigurationExtensions

The ConfigurationExtensions file now imports System.Collections.Concurrent, making the ConcurrentDictionary type available for use within the extension methods.

src/Mevora/Extensions · high confidence

Refactored processor registration and added pipeline action support

The MevoraDispatcher class has been removed, and the ConfigurationProcessor has been updated to use explicit service registrars (ProcessorRegistrar and PipelineRegistrar) instead of reflection-based assembly scanning. Additionally, the configuration model now supports registering pipeline actions via AddPipelineAction, allowing users to define custom pipeline behaviors.

src/Mevora/Core · high confidence

Removal of legacy dispatcher interfaces

The \IDispatcher\ and \IMevoraDispatcher\ interfaces have been removed from the codebase. This change eliminates the previous synchronous and asynchronous dispatch contracts, likely to be replaced by the new source-generator-based dispatcher introduced in the same commit set.

src/Mevora/Interfaces · high confidence

Dependencies

Mevora package metadata and generator project added

The Mevora library project (src/Mevora/Mevora.csproj) was updated with full NuGet packaging metadata (version 1.0.2, author, description, license, and assets) and now includes the Mevora.Generators DLL as an analyzer. A new project file (src/Mevora.Generators/Mevora.Generators.csproj) was added, targeting .NET Standard 2.0 and referencing Microsoft.CodeAnalysis packages (4.14.0) for C\# source generation.

(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 49 → 50 (+1.4)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 99 → 99 (+0.0)
  • Architecture 93 → 93 (+0.0)
  • Maturity 55 → 55 (+0.0)
  • Readiness 27 → 27 (+0.0)
  • Security 100 → 100 (+0.0)
  • Performance 60 → 70 (+9.7)

Resolved (4)

  • No exposed public API
  • The visible content is clipped mid-installation, so the Getting Started, Requests & Processors, and Validation sections are not shown. (README.md)
  • early-stage repository — too little history to judge knowledge freshness
  • single-maintainer — knowledge-concentration (bus factor) risk

New (2)

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

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

Survey your own repository

ArdaByk/Mevora 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 84ca3fd40f117ac1e4882f4a51c570fc31084f98 — 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.