Skip to content
CAI
Software that uses CAICheck a score

lpgauth/metal

60.8

Adequate · 17 September 2026

99

lines of production code

Erlang

primary language

1

measurement over time

CAI band scale
CAI lens gauges

What this system is

This system is an Erlang library that provides a lightweight, OTP-compliant server behavior for building stateful processes. It exposes a core module with standard system callbacks and lifecycle management, supported by a test suite that verifies server startup, supervision, and message passing. The project also includes modernized CI infrastructure and documentation tooling.

Features

Introduce lightweight server behavior with sys-compliant callbacks

The application now includes a core \metal\ module that provides a lightweight server behavior. This module implements standard OTP sys callbacks (\system\_code\_change\, \system\_continue\, \system\_get\_state\, \system\_terminate\) and exposes a \start\_link\ function for spawning processes. It supports optional \init/3\ and \terminate/2\ callbacks in implementing modules, allowing for flexible state management and cleanup while ensuring proper process registration and error handling.

src · high confidence

Behavioural changes

1 commit (0 fixes) modifying bin

A change to existing behaviour in bin — 1 commit, 1 file.

bin · low confidence · unverified

Infrastructure modernization and documentation cleanup

This release updates the project's build and documentation infrastructure without changing any source code or API. The CI system has moved from Travis to GitHub Actions, expanding the test matrix to cover OTP 25 through 28. Documentation generation now uses \rebar3\_ex\_doc\ instead of \edown\, and the local \doc/\ directory is no longer committed to the repository. Legacy tools and configuration files, including \.travis.yml\, \elvis.config\, and the \coveralls\ plugin, have been removed. Additionally, a \.gitignore\ file has been added to exclude build artifacts and crash dumps, and the LICENSE file's copyright year has been updated.

(repo-wide) · high confidence

Test coverage

Added EUnit tests for the metal behavior and supervisor integration

Added test coverage for the metal behavior implementation, including test helpers (test\_server, test\_server2) and a test supervisor (test\_sup). The new test suite verifies server lifecycle management, such as handling duplicate start attempts, normal termination, and crash recovery under supervision, as well as message passing via ping/pong interactions.

test · 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

Baseline

  • First survey — no prior run to compare against. CAI 61.

Lenses

  • Code Health 100
  • Architecture 69
  • Maturity 44
  • Readiness 73
  • Security 92

Changes since last survey

  • 7 commits — 6 feature/other, 1 fixes

By area

  • (root) — 4 commits
  • src/metal.app.src — 2 commits
  • (repo) — 1 commit

Notable commits

  • fix: Fix DOC
  • change: Add LICENSE
  • change: Bump version 0.1.1
  • change: Initial commit
  • change: Merge pull request #2 from shezarkhani/patch-1
  • change: Modernize for 0.1.2: drop Travis, edown, elvis
  • change: Removes mod key from application file

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

Survey your own repository

lpgauth/metal 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 17 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 2278066fea062ba8fd8f37dde4686019980a0ca4 — the exact code this score is about.
  • Scored under rubric-2026.09.12 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-f94092f054c1.