Skip to content
CAI
Software that uses CAICheck a score

xyncro/chiron

45.9

Weak · 24 September 2026

1.7k

lines of production code

F#

primary language

5

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

Chiron is a .NET library for JSON serialization and parsing, designed with a focus on robust error reporting and functional programming patterns. It provides comprehensive tools for encoding and decoding JSON data, including support for complex types, schema definitions, and variable-length strings. The system emphasizes reliability through property-based testing and a design that aggregates multiple parsing errors rather than failing on the first issue.

Features

Add Chiron benchmark suite for JSON encoding, decoding, and parsing

Added a new benchmarking project (Chiron.Benchmarks) to measure the performance of JSON serialization and parsing. The suite includes benchmarks for encoding and decoding complex and simple types using both explicit and inferred APIs, as well as parsing and formatting operations. It also compares Chiron's string escaping and parsing against Newtonsoft.Json and includes tests for variable-length strings and JSON Schema definitions.

benchmarks · high confidence

Behavioural changes

Project structure and build infrastructure overhaul

The repository has been restructured to support .NET Core and modern build tooling. A new solution file (Chiron.sln) organizes the project into src, tests, and benchmarks, while the build process is now driven by a PowerShell script (build.ps1) and CI configurations for Travis and Appveyor. Additionally, standard repository configuration files have been added: .editorconfig for consistent code formatting, .gitattributes for line-ending normalization, and a comprehensive .gitignore. The project also includes a LICENSE.md and updated README.md with installation instructions.

(repo-wide) · high confidence

Redesign of JSON parsing and serialization with improved error reporting

The Chiron library has been refactored to use a new internal representation for JSON data and errors. Parsing and serialization now return a \JsonResult\<'a\>\ that aggregates multiple failures rather than stopping at the first error, providing more comprehensive error messages for missing or mismatched JSON members. The \Json\ type now explicitly distinguishes between Object, Array, String, Number, Bool, and Null, and the \JsonObject\ type has been updated to support both write and read operations with custom equality. Additionally, the library introduces a \ChironErrorPolicy\ to control whether deserialization stops on the first error or continues to collect all errors, and provides better formatting options for JSON output.

src/Chiron · high confidence

Test coverage

Added property-based and functional tests for JSON serialization

Added comprehensive property-based tests for round-tripping various JSON types including strings, GUIDs, integers, floats, decimals, booleans, byte arrays, DateTimes, and custom records/unions. Also added functional tests for JSON parsing, formatting, and lens-based access, ensuring serialization and deserialization work correctly across different cultures.

tests · high confidence

Dependencies

Migrate to .NET Standard 2.0 and adopt XUnit/FsCheck for testing

The project has been updated to target .NET Standard 2.0 (alongside .NET Framework 4.5.2), enabling broader compatibility. Dependencies have been updated, including FParsec to 1.0.3 and Aether to 8.2.0. The test suite has been converted to use XUnit and FsCheck, replacing the previous testing framework.

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

Lenses

  • Architecture 100 → 100 (-0.1)
  • Maturity 22 → 22 (+0.0)
  • Readiness 62 → 62 (+0.0)
  • Security 100 → 65 (-35.0)

Resolved (5)

  • Dependency hygiene not measured — no packages were read
  • No exposed public API
  • Test reliability not included
  • complexity unreadable for .fs — churn × complexity hotspots could not be measured
  • dormant codebase — no living knowledge left to concentrate

New (7)

  • Documentation: no installation or build instructions (README.md)
  • Documentation: no usage examples (README.md)
  • End-of-life runtime: .NET netcoreapp2.1
  • No SBOM
  • No artifact signing
  • No build provenance
  • No dependency advisory monitoring

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

Survey your own repository

xyncro/chiron 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 24 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 a54d69e818d7325dfc6ddb2a3675775de839bd3f — 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-923689c465cf.