SpecSheriff
rule · _guidelines/spec/1.12 · s-xqs2e24mx5253ye

The specification holds its content; the code implements it

Checkedconfirmed by its owner

The specification holds its content and the code implements it, never the reverse. A rule does not hand what it states to a declaration in the code: a set of states, a list of members, a table of routes is described in the specification, and the code is checked against it. A rule that sends its reader to a source file for its content is a defect, repaired when that rule is revised.

Why

A specification that leaves a list in the code and names only its meaning cannot say what the system is, and a copy of that list written beside it in prose goes stale with nothing noticing. Held in the specification and checked against the code, the content is in one place and the disagreement is found by a machine.

The links it makes

The links made to it

The tests bound to it