SpecSheriff
rule · _guidelines/spec/1.4 · s-kag2m9tzdnduxdx

A node is cited by its sid, and its id is its address

Checkedconfirmed by its owner

A node carries a sid, given to it once and never changed, and is cited by it everywhere: in the links between nodes, in the code, in the tests and in commits.

Its id is its address: the part it stands in, followed by its place there — for a section or a rule, its number among the sections and rules under the same parent; for a term, the term. The header of a domain is addressed by the domain's name alone, and the node at the top of a file of the guidelines, of the technical appendix or of contracts by the part's name and the file's; each file of the guidelines and of the appendix is numbered under that address of its own, while contracts, like a domain, is numbered under the part's name straight through its files.

The address is computed from where the node stands, never written by hand, and nothing refers to it.

Why

A reference to a place breaks whenever the place changes, and a specification that grows is reordered and has its rules moved between domains for as long as it grows. A sid is not a place, so a move cannot break a reference that holds it: moving a node changes its address, never its sid. The address stays where a person reads, computed so that it can never disagree with where the node stands.

The links it makes

The links made to it

The decisions taken on it

2026-10-27 · textual
Problem

A test in a language whose names cannot hold a hyphen declares its sid by a mark rather than in its name.

Ruling

The owner: a sid is cited in the tests, however a test declares it (§s-rwqzepmrt77rv35).

The tests bound to it