mix tack.rules_check (pica v0.1.0)

Copy Markdown View Source

Runs Tack.RulesCheck over the working tree and fails the gate on any finding.

mix tack.rules_check [--tighten]

Three checks: CLAUDE.md may not exceed its line budget; every paths: glob in .claude/rules/*.md must match at least one file; and the number of lib/**/*.ex files no glob covers may not exceed its budget. The budgets live in .claude/rules/BUDGET and are ratchets — --tighten lowers each to today's measurement and never raises one. Raising a budget is a deliberate edit to that file, visible in the diff.

Globs are expanded with Path.wildcard/2 against the working tree, dotfiles included, which is what the harness sees too: an untracked file counts. The rationale for each check is on Tack.RulesCheck; this task owns the IO.

A mix quality step; runs in CI.