Skip to content
CAI
Software that uses CAICheck a score

implicitly-awesome/exop

56.8

Adequate · 21 September 2026

1.6k

lines of production code

Elixir

primary language

8

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is an Elixir library that provides a framework for defining and executing operations with support for parameter validation, coercion, and error handling. It enables developers to construct sequential workflows by chaining operations and attaching callbacks or fallbacks. The codebase has been modernized to use current Elixir configuration syntax and includes comprehensive test coverage for its core features.

Features

Add Elixir code formatter configuration and CI support

The project now includes a \.formatter.exs\ file that configures the Elixir code formatter with specific rules for Exop macros (such as \parameter\, \operation\, and \step\) to be called without parentheses. Additionally, a \.tool-versions\ file specifies Erlang 25.3.2.7 and Elixir 1.14.3-otp-25, while \.travis.yml\ is added to run tests across Elixir versions 1.11.0 through 1.15.0 and OTP 21.0 through 26.0.

(repo-wide) · high confidence

Introduce Exop core modules for operation, chain, callback, and fallback handling

The \lib/exop\ directory now contains the foundational modules for the Exop library, including \Exop.Operation\ for defining operation contracts and execution, \Exop.Chain\ for linking operations into a sequential workflow, \Exop.Callback\ for post-success side effects, and \Exop.Fallback\ for error handling. This adds the primary behavioral capability to define, validate, and run operations with support for coercion, validation, and error fallbacks.

lib/exop · high confidence

Behavioural changes

Migrate to Elixir 1.19+ config syntax

The application's configuration files (dev, test, and prod) now use the modern \import Config\ syntax instead of the legacy \use Mix.Config\. Additionally, the main \config.exs\ file has been updated to import environment-specific configuration files using \import\_config\, ensuring compatibility with recent versions of Elixir and Erlang.

config · medium confidence

Removal of Exop module

The Exop module has been removed from the library. This change eliminates the Exop namespace and its associated functionality from the codebase.

lib · high confidence

Test coverage

Added comprehensive test coverage for Exop core features

Added new test suites for callbacks, operation chaining, fallback handling, policy authorization, and validation logic, while removing the legacy placeholder test file. These tests verify that operations correctly invoke callbacks, chain multiple operations with parameter passing, handle errors via fallback modules, enforce access policies, and validate parameters against defined contracts.

test · high confidence

Dependencies

Upgrade to Exop 1.4.5 with Elixir 1.11+ support

The project has been updated to version 1.4.5, raising the minimum required Elixir version to 1.11.0. This update also adds explicit package metadata (maintainer, license, links) and configures dev dependencies for documentation (ex\_doc) and static analysis (dialyxir).

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

Lenses

  • Code Health 99 → 99 (+0.5)
  • Architecture 100 → 100 (-0.2)
  • Maturity 50 → 50 (+0.0)
  • Readiness 50 → 42 (-7.3)
  • Security 100 → 80 (-20.0)

Resolved (5)

  • 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
  • dormant codebase — no living knowledge left to concentrate

New (8)

  • Documentation: no installation or build instructions (README.md)
  • Documentation: no usage examples (README.md)
  • No SBOM
  • No artifact signing
  • No build provenance
  • No dependency advisory monitoring
  • Outdated: dialyxir
  • Outdated: ex_doc

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

Survey your own repository

implicitly-awesome/exop 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 e4f16357f4aaf3b7cdd802836daba5c7bb56aaab — 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-b84573e22831.