Skip to main content

Module cli_coverage

Module cli_coverage 

Source
Expand description

cli_coverage — typed self-description of sui’s nix-replacement progress.

Every subcommand sui exposes is declared as a Lisp form:

(defsui-command :name “store sign” :nix-equivalent “nix store sign” :maturity Working :substrate (“store_layout” “hash”) :notes “Materializes ed25519-keyed signatures over NAR hashes”)

The substrate enforces a catalog ↔ source invariant: every command pattern in sui/src/main.rs must have a catalog entry, and every catalog entry must point at code that exists. Adding a stub command requires landing its catalog entry in the same commit, so the operator-facing coverage matrix stays truthful.

Operators query “how close is sui to a full nix replacement?” via sui-spec-inventory --coverage, which walks the catalog, groups by maturity, and emits a Nord-styled coverage gauge. The same data drives substrate-wide tickets — each Missing and each Stub is a queued substrate task.

Structs§

SuiCommand
One sui subcommand’s coverage entry vs the equivalent nix surface.

Enums§

SuiCommandMaturity
Maturity gate for a sui subcommand — where it stands on the path to full nix replacement.

Constants§

CANONICAL_CLI_COVERAGE_LISP

Functions§

load_canonical
Load the full canonical CLI coverage catalog.
maturity_histogram
Coverage histogram — how many commands sit in each maturity gate. Operators query this for the headline number.
replacement_percentage
Headline coverage number: Working / (everything that isn't SuiNative).