Skip to content

0.5.0

Choose a tag to compare

@TomD4vs TomD4vs released this 04 Sep 22:41
· 27 commits to main since this release

The structural pass: prumo now reads markdown as markdown. Seven of the eight defects an outside audit of 0.4.10 confirmed are fixed here; the eighth, the rule for a file a generator writes, changes how a sentence is read and has to be measured on repositories of its own first, so it is the next release.

Fenced blocks and comments. A path inside a ``` block is checked as a command or a file tree, with the sentence above the block as its context. A link inside a fenced block is only being quoted, like anything inside an HTML comment, and neither is reported any more. A block marked markdown is not read, a comment line inside a block is not read, and `` above a block silences the whole block.

One finding per line. A path cited on three lines used to be reported once and fixed once per run. It is now reported on each line and --fix corrects all of them in one pass. A path that a sentence excuses stays excused on the lines of that file that follow, as before.

--fix converges. It used to find its target only between backticks or after ](, and answered line changed since the scan for a reference definition, a command, a Windows path, a line number or a trailing slash that had not changed at all. It now rewrites the path wherever it stands.

Installed skills. A SKILL.md under .claude/skills/ or .agents/skills/ is read even when git does not track it, which is how the README already said it worked. The header counts the files read from disk. .claude/commands/ is a target; .claude/agents/ was tried and dropped after measuring.

JSON contract. --format json, --json FILE and the MCP server's structured content now open with schemaVersion, prumoVersion, repo and checkedAt.

A face for people. In a terminal the report now opens with the name drawn large, a rule, the version, the tagline and the GitHub page; each section title is a coloured label, the path the note cites is painted apart from the one the repository holds, and the last line counts the findings by kind. A pipe, a file, CI, a hook and the MCP server get the report alone, byte for byte as before. PRUMO_BANNER=0 turns the banner off, PRUMO_BANNER=1 forces it, NO_COLOR keeps everything plain.

Under the hood. git ls-files runs once per run instead of up to three times, and the index holds each path once, under its last name, instead of every ending of every path. Both renderers and the MCP server have unit tests of their own.

Measured before shipping, on sixty public repositories on none of the earlier lists, 0.4.10 against this tree: 144 findings removed, all false; 404 added as the same path on another line; 4 added from fenced blocks, 2 real and 2 false; two repositories left the clean column, one of them for two stale test commands. Three rules came out of that material, a shell variable prefix, e.g. as an example marker, and a folder named path, so it cannot measure them; the design page has the table.

Suite 71 to 105, simulation 81 to 97.