Skip to content
CAI
Software that uses CAICheck a score

exponentially/helios

56.2

Adequate · 20 September 2026

7.8k

lines of production code

Elixir

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

Helios is an Elixir framework designed for building CQRS and event-sourced applications. It provides core infrastructure including aggregate behaviors, a command processing pipeline, and pluggable event journal adapters for persistence. The system simplifies development through compile-time facade generation and includes comprehensive tooling for testing, static analysis, and code quality.

Features

Initial release of Helios CQRS framework

This entry marks the first public release (v0.1.0) of Helios, a framework for building Elixir CQRS applications. It introduces core capabilities including Aggregate Behavior, an Aggregate Server with supervision, and a distributed Registry using Swarm. A key feature is the compile-time generation of facade modules (e.g., \MyApp.Facade.User\) for aggregates, simplifying command routing. The release also establishes the necessary project infrastructure, including Travis CI integration, Apache 2.0 licensing, and comprehensive documentation with configuration guides for both in-memory and Eventstore-based event journals.

(repo-wide) · high confidence

Introduces core Event Sourcing infrastructure for Helios

Helios now provides a complete foundation for building event-sourced applications, including an Aggregate behavior with lifecycle management, a GenServer-based Aggregate Server that handles command execution, event replay, and snapshotting, and an in-memory Event Journal adapter for persisting events. The release also adds a Context struct for managing request state, a Pipeline system for processing commands through pluggable stages, and Facade modules that allow external code to dispatch commands to aggregates via generated proxy functions.

lib/helios · high confidence

Test coverage

Added integration test support for event journal and aggregates; Added test suite for aggregate server, routing, and pipeline execution; Updated Eventstore integration test configuration.

Dependencies

Helios 0.2.3: New dependencies and tooling configuration

Helios has been updated to version 0.2.3, introducing several new dependencies including elixir\_uuid, libring, gen\_state\_machine, and poolboy, while upgrading the optional extreme adapter to version 0.13.3. The project now integrates dialyxir for static analysis, credo for code linting, and excoveralls for test coverage reporting. Additionally, the application now requires the :crypto application, and documentation has been reorganized to reflect the new module structure.

(dependencies) · high 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 58 → 56 (-1.7)
  • Rubric changed (rubric-2026.08.17 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 97 → 98 (+1.1)
  • Architecture 100 → 91 (-8.7)
  • Maturity 49 → 45 (-3.5)
  • Readiness 37 → 42 (+5.3)
  • Security 100 → 79 (-21.3)
  • Domain Modelling 100 → 100 (+0.0)
  • Event Sourcing 100 → 100 (+0.0)

Resolved (12)

  • Coverage not included — suite not readable by the collector
  • Dependency hygiene not measured — no supported dependency manifest was read
  • Duplicated block (12–15 lines × 2) (lib/helios/registry/tracker.ex)
  • Duplicated block (21 lines × 2) (lib/helios/event_journal/adapters/memory.ex)
  • Duplicated block (6 lines × 2) (lib/helios/router/aggregate.ex)
  • Duplicated block (6 lines × 2) (lib/helios/router/aggregate.ex)
  • Duplicated block (9 lines × 3) (lib/helios/event_journal/adapters/memory.ex)
  • No exposed public API
  • Test reliability not included
  • The README is an installation/configuration guide with only a single example application reference; it does not describe the overall CQRS/aggregate structure or how Helios fits into a segregated app. (README.md)
  • TooManyMethods: Tracker (lib/helios/registry/tracker.ex)
  • single-maintainer — knowledge-concentration (bus factor) risk

New (23)

  • Duplicated block (12–19 lines × 2) (lib/helios/registry/tracker.ex)
  • Duplicated block (36 lines × 2) (lib/helios/event_journal/adapters/memory.ex)
  • Duplicated block (5 lines × 2) (lib/helios/event_journal/adapters/memory.ex)
  • Duplicated block (8 lines × 4) (lib/helios/event_journal/adapters/memory.ex)
  • FileTooLong: registry/tracker.ex (lib/helios/registry/tracker.ex)
  • High CVE: [GHSA redacted] (mix.lock)
  • Members sharing a duplicated core (4 members, 50+ identical tokens) (lib/helios/event_journal/adapters/memory.ex)
  • Most significant orphaned file (lib/helios/registry/tracker.ex)
  • No SBOM
  • No artifact signing
  • No build provenance
  • No dependency advisory monitoring
  • Outdated: elixir_uuid
  • Outdated: ex_doc
  • Outdated: excoveralls
  • Outdated: libring
  • Outdated: poolboy
  • TodoComment (lib/helios/aggregate/server.ex)
  • TodoComment (lib/helios/context.ex)
  • TodoComment (lib/helios/event_journal/adapters/eventstore.ex)
  • …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

exponentially/helios 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 20 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 3a7b66bd95a8c53c500272eb8a269a73e6de6d8a — 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.