-
released this
2026-08-17 14:24:23 +00:00 | 140 commits to main since this releaseCut against the merge commit of #105.
External
.pre-commit-hooks.yamlconsumers: nothing to doNo hook-relevant file changed since
v2.0.0. All three exported hooks —kyberforge-vale-audit-skill,kyberforge-vale-audit-agent,kyberforge-skill-size-check— are byte-identical tov2.0.1, as are both bundledassets/trees.scripts/check-release-needed.sh, run againstmain, exits 0.Under ADR-0014 a tag is cut when hook-relevant files change, so this release is outside that cadence: it is a checkpoint marking the documentation restructure, not a contract change. Bumping your
rev:fromv2.0.0tov2.0.1is safe and changes nothing about what the hooks accept or reject. Staying onv2.0.0is equally fine.The behavioural changes described in the
v2.0.0notes still stand — the gates ship hot with no baseline, and the retrofit tracked in #99 is still open.What is in it
The every-session context set is 74% smaller
AGENTS.mdis preloaded throughCLAUDE.md's@AGENTS.mdimport, and instructed readingCONTEXT.mdanddocs/VISION.md. Every word was a tax paid whether or not the session needed it.File Before After AGENTS.md(preloaded)24,219 B 6,808 B −72% CONTEXT.md(instructed read)33,799 B 9,762 B −71% docs/VISION.md(instructed read)4,671 B — demoted to on-demand Total ~15,700 tok ~4,140 tok −74% Nothing was deleted that was not either relocated or verified as already carried elsewhere.
Two new documents
README.md— did not previously exist. One-time setup, prerequisites and test commands, moved off the preloaded path.docs/spec/gates.md— gate forensics: what each pre-commit and pre-push hook enforces, why it is shaped that way, and what was tried and rejected. Every constant, hook ID, error string and verification number is preserved, including the Vale prefilter mechanics that had been a 1,444-wordCONTEXT.mdglossary entry.
CONTEXT.mdwas restructured to conform togrill-with-docs's ownCONTEXT-FORMAT.mdtemplate, which it had never followed — 23 glossary entries averaging 190 words against a documented "one sentence max".Published plugin metadata corrected — ADR-0021
gitea's marketplace description advertised wikis, for which no skill exists, while omittinggitea-branchesandgitea-files;git's advertised pull requests, which belong to gitea, while omittingpc-author/pc-run. This was the third occurrence of one defect, so ADR-0021 gives the two sources distinct jobs: published descriptions enumerate,architecture.md's table states routing boundaries only. They are supposed to differ, and nobody should be diffing them.Package versions:
bin1.1.3 → 1.1.5,git1.3.3 → 1.3.5,gitea1.3.4 → 1.3.6, marketplace 0.4.2 → 0.4.5. All PATCH for metadata under theper_packagestrategy. apm consumers resolve unpinned against the default branch and already had these at merge.Restored guard-rails and re-anchored citations
A four-way review of the trim found 15 defects, all fixed before merge. Two were real content drops — the
apm packmirror-refresh warning and the plugin self-containment constraint. Both were guard-rails that fired from preloaded context, so each was placed by when it needs to fire: the first in the DRIFT failure message of the hook that catches that exact mistake, the second inarchitecture.mdbeside the mechanism.Eleven dangling references across eight files were re-anchored to ADR-0013 where it owns the fact, or had the citation dropped where no ADR does. ADR-0007 and ADR-0015 gained dated amendments.
Known trade, recorded deliberately
AGENTS.mdsays "14 repo-defined hooks" while the command it hands you prints 16. The reconciliation — pre-commit's twometahooks declare nostages:— now lives ingates.md. Same shape for thepretty-format-jsonguard. Both previously fired from preloaded context and now require openinggates.mdfirst. That is the cost of the trim.Verification
bash tests/run-tests.sh --strict— 24 suites passed, 0 skipped, 0 failedpre-commit run --hook-stage pre-push --all-files— 16/16 Passedscripts/check-release-needed.shagainstmain— exit 0
Downloads