Changes for version 0.004 - 2026-11-10

  • The update of CriticProfile appends to a profile that is there each policy of the template that it lacks, as the template writes its section, and leaves every line of the profile as it was. It used to leave them for a person, unless replace: true overwrote the profile.
  • New check RefusedIniKeys: an INI file, such as dist.ini, sets no key that the flavor refuses for a plugin, such as user under [GithubMeta]. Unlike DataSchema, its update removes each such line, and nothing else.

Documentation

Check a repository against its flavor of the standards, and bring it up to date

Modules

Whether the development harness of a repository conforms to its standards, and bringing it up to date
The interface of a check, and what the checks share
CLAUDE.md exists and names the skills that it must
.claude/settings.json enables the plugins of the harness
The perlcritic profile enables or turns off every policy of its template
A JSON, YAML or INI file parses and matches a schema
A distribution has the files that its build needs
The git hooks are tracked, match their templates, and are installed
An INI file, such as dist.ini, sets no key that the flavor refuses, and the update removes each one
The system packages that a repository declares in metamerge.yml, validated, and resolved for a host
The configuration files of the tools exist
The CI workflows exist
.conformance.yml, which picks the flavor of a repository and its source
A named set of checks and their configuration, read from a standards source
Parse YAML, JSON and INI, and validate the result against a schema
What a check can read of a repository: its paths, their blob SHAs and their contents
A snapshot of a checkout on this machine, which an update can change
A snapshot from a tree listing and a callback that fetches one file
Where the standards come from: the flavor files and the templates
Standards read from a directory on this machine
Standards fetched from a git repository into a cache directory
What an update changed, or would change, in a checkout, and what it left to a person