Skip to main content

Check Reference

kapi check runs a set of checks over source content and reports each finding under a stable rule id, such as hygiene.doubled-word. The list below gives every check with the rule ids it reports; each check's page says what each rule reports, at which severity, and what fixes it.

The rule id's first segment is the rule family, which differs from the name the code registers the check under: the content-lint check reports under hygiene. A finding names the family, so the family is what to look up here.

The list is generated from the code: the checks, their families and their rule ids come from the check package, and a CI drift gate fails the build when the committed dataset and the code disagree.

CheckRule idsWhat it checks
Content Lint
hygiene.empty
hygiene.leading-whitespace
hygiene.trailing-whitespace
hygiene.double-spaces
hygiene.doubled-word
hygiene.control-char
Report the text-hygiene defects of a single source text, covering emptiness, stray whitespace, spacing and repetition.
Length Check
length.max-chars-exceeded
length.max-words-exceeded
Hold each source block to an absolute character or word limit.
Pattern Check
pattern.forbidden-pattern
pattern.pattern-missing
Require a pattern to appear in every source block, or forbid one from appearing at all.
Comment Style
comment.sentence-length
comment.length
comment.density
Hold the comments in source files to the sentence and comment word limits a voice profile sets for them.

The voice and terminology checks are configured by the project's context, not by a flag, and their rules are the ones a voice profile or a terms store declares. Checks describes the report they share with the checks above, the verdict, and what fails.