Skip to content
CAI
Software that uses CAICheck a score

nomasystems/restcheck

67.7

Adequate · 17 September 2026

2.5k

lines of production code

Erlang

primary language

1

measurement over time

CAI band scale
CAI lens gauges

What this system is

Restcheck is a REST API fuzzing tool that performs contract testing by validating API behavior against OpenAPI 3.0 specifications using property-based testing. It functions as a rebar3 plugin that generates Erlang test suites from API schemas and executes them against target servers to verify response correctness. The system supports configurable HTTP interactions, including SSL, authentication, and retries, while leveraging the Triq library for schema validation and data generation.

Features

Initial release of REST API contract testing with property-based generation

This release introduces the core \restcheck\ tool for automatic REST API contract testing using property-based techniques. It provides a rebar3 plugin interface to generate Erlang test suites from API specifications (via \erf\), execute them against a target server using an HTTP client with support for SSL, bearer authentication, retries, and configurable request counts, and validate responses against schemas using the \triq\ backend. The update also includes schema manipulation utilities for generating complementary test data and bumps the application version to 0.1.0.

src · high confidence

Initial release of restcheck with documentation and build configuration

This entry introduces the restcheck project, a REST API fuzzing tool based on property-based testing that validates API behavior against OpenAPI 3.0 specifications. The release includes the core implementation, a rebar3 plugin interface, and a default property-based testing backend using the triq library. It also adds comprehensive project documentation, including a README with quickstart instructions and configuration options (such as host, port, SSL, auth, retries, and base\_path), as well as CONTRIBUTING guidelines. The build configuration establishes dependencies on buoy, erf, ndto, njson, and triq, and sets up ex\_doc for documentation generation.

(repo-wide) · high confidence

Test coverage

Added property-based and functional tests for schema validation, DTO generation, and HTTP client

Added comprehensive test suites to verify the correctness of the schema logic, the Triq-based property-based testing (PBT) backend, and the HTTP client. The new \restcheck\_schema\_SUITE\ and \restcheck\_schema\_properties\ modules test schema algebraic properties (intersection, union, complement) and DOM generators. The \restcheck\_triq\_SUITE\ and \restcheck\_triq\_properties\ modules validate that the DTO generator correctly produces data matching JSON Schema constraints (types, enums, ranges, patterns, formats). The \restcheck\_client\_SUITE\ and \restcheck\_SUITE\ modules test the HTTP client's request handling, base path normalization, authentication, and end-to-end API checking against mocked servers.

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 68.

Lenses

  • Code Health 88
  • Architecture 100
  • Maturity 58
  • Readiness 61
  • Security 90

Changes since last survey

  • 35 commits — 25 feature/other, 10 fixes

By area

  • (root) — 25 commits
  • src/restcheck_client.erl — 2 commits
  • src/restcheck_triq.erl — 2 commits
  • .github/workflows — 1 commit
  • src/restcheck.app.src — 1 commit
  • src/restcheck.erl — 1 commit
  • src/restcheck_backend.erl — 1 commit
  • src/restcheck_pbt.erl — 1 commit
  • src/restcheck_suite.erl — 1 commit

Notable commits

  • fix: chore: fix ndto and erf versions (#45)
  • fix: fix(#43): force maxProperties greater than min (#44)
  • fix: fix: README.md link (#35)
  • fix: fix: client tests and interface (#16)
  • fix: fix: ensure deps (#33)
  • fix: fix: inlines nested refs in generated suites (#53)
  • fix: fix: minor adjustments (#15)
  • fix: fix: missing types (#22)
  • fix: fix: noshrink response body (#39)
  • fix: fix: undefined schema (#32)
  • change: build: 0.1.0 (#41)
  • change: chore: bump deps
  • change: chore: move ndto schema operations to restcheck (#36)
  • change: chore: update triq version (#42)
  • change: docs(#1): add README.md (#40)
  • change: docs(#2): add github pages (#8)
  • change: docs(#3): add contribution guidelines (#34)
  • change: feat(#11): add HTTP client implementation (#12)
  • change: feat(#17): add test SUITE generator (#20)
  • change: feat(#24): allow configuration of the number of requests per operation (#28)
  • …and 15 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

nomasystems/restcheck 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 965e02ef5da6c548a5a1f1eaf7faae66e549132c — 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.