# Verifiable Premises

Author: Benny Johansson
Source: https://github.com/bennyjo/verifiable-premises
Facts: JavaScript for Node.js. Apache License 2.0. Unreleased, version 0.1.0.
Canonical: https://thewalkingengineer.com/projects/verifiable-premises/

A checker that ties each fact a task relies on to a quote from its primary source, and links each test to the fact it pins.

A premise is a fact a task relies on, such as a limit from a vendor's documentation. If a brief gets that fact slightly wrong, the code, the tests, and the review can all repeat the mistake. Then every check passes, and none of them ever looked at the original source.

Verifiable Premises adds a ledger, `premises.json`, that records each premise with a word-for-word quote from its primary source. The `premises check` command confirms that each quote is still in its source, and that each test is linked to a premise the source supports. A second command, `premises mutate`, changes the code behind a premise and checks that its tests fail, which shows whether they really test it.

It's written for developers and for coding agents, which are its main users. It ships an agent skill that tells an agent how to use the ledger.

