Skip to content

majordomus quality report

Measure the crate and report every finding, with the rule it breaks and what to do about it

majordomus quality report

Usage

majordomus quality report [OPTIONS]

Arguments

argumentvaluedefaultdescription
--repo <PATH> Start the search for the repository root here (default: the current directory) (accepted by every subcommand)
--discovery vcs | filesystem vcs How declarative files are enumerated (accepted by every subcommand)
  • vcs — Tracked files, through the version-control index (the layer's contract)
  • filesystem — A walk of the work tree with the same glob semantics; untracked files included
--strict flag Refuse to proceed when any file of the layer carries an error diagnostic (accepted by every subcommand)
--share <DIR> The tool distribution's share directory (kinds.yaml, schemas/); default: $MAJORDOMUS_SHARE, then the repository's own share/, then the one beside the executable (accepted by every subcommand)
--format text | json text Output shape
  • text — Lines for a person
  • json — One JSON document, deterministic
--code <CODE> Only findings carrying this code, e.g. RUST_PUBLIC_MISSING_EXAMPLE
--path <PATH> Only findings under this repository-relative path prefix
--summary flag Print the counts and leave the findings out
--include-baselined flag Show the findings the baseline already accepts, which are left out by default
--write-baseline flag Record today's findings as the accepted baseline, so the debt can shrink and cannot grow

Examples

  • Where the crate's public surface stands

    The counts alone: how much of the exported surface is documented and exampled, how many modules something exercises, and how the canonical operations stand against the command line, HTTP, OpenAPI and MCP. Exits 10 when any finding stands outside the recorded baseline.

    $ majordomus quality report --summary

    Verified by the example tests: exits 0.

  • One kind of finding, with the rule and the remedy

    Filtered to one violation code. Every finding carries the rule that requires it, where it is, why it matters and what to do — which is what lets a person and an agent act on the same report.

    $ majordomus quality report --code RUST_MODULE_MISSING_EXAMPLE --format json

    Verified by the example tests: exits 0; prints one JSON document carrying /measured, /passes, /report/schema.

Where this comes from

Declared once in apps/majordomus-cli/src/cli.rs: clap for the structure, typed Rust metadata beside it for the examples. This page, majordomus quality report --help, docs/generated/cli.md and docs/generated/cli.json are projections of that one declaration.

The whole command line on one page: the registry's command-line page. The task lifecycle (init, start, finish, doctor, ...) belongs to the shell tool, a different program: Commands and its specification.