SpecSheriffIn progress
rule · _guidelines/spec/5.6 · s-sfjka4zc4rhfu67

A project's own checks and generators are tested against the rule listing them

Checkedconfirmed by its owner

Every test of a project's own check or generator carries the sid of the rule listing it (§s-2fau85dfyyeq66m, §s-km4x4s26kv7pjze) and is written before the code it tests. A test a commit adds or changes carries that sid only once the rule is checked, and each such check or generator whose code a commit adds or changes has a test carrying it.

Why

A test is all that holds a project's check or generator to its rule: the code of the repository's tools is not the system's code and carries no tag (§s-hheus6f395ynqvc), and what a generator writes owes no test (§s-rah8b37kytb682y) and is withheld from the reviewer (§s-nyh9yk22ba6g77q). The rule listing a check or generator says what it checks or writes, so its tests verify that rule; a test written first tests that rule rather than what the code happened to do, and one carrying the sid of an unchecked rule would have the code implement what nobody confirmed (§s-utvqbypzhmgndug).

The links it makes

The links made to it

The decisions taken on it

2026-11-04 · textual
Problem

Nothing held a project's own check or generator to the rule listing it: its code carries no tag, what a generator writes owes no test and is withheld from the reviewer.

Ruling

The owner: the tests of a project's own checks and generators carry the sid of the rule listing them and are written first, as the SpecSheriff tools' own tests do by the owner's choice of 2026-10-28.

2026-11-05 · textual
Problem

The system's code came to include its tests, which carry a sid rather than a tag.

Ruling

Following the owner's ruling on §s-hheus6f395ynqvc: the code of the repository's tools is not the system's code.