Skip to content
EN · PT

Gate: rule-uses-resolve

What a rule says it uses exists in the spec — a declared field, a dependency row.

Property Value
Checker rule-uses-resolve
Confronts spec
Blocking by default — new project yes
Blocking by default — existing project no — informs

A spec has the two ends — the rules (behaviours, states, errors…) and the data (the data contract, the domain, the props) — and nothing between them: what each rule reads lived, when it lived anywhere, in prose. A field changed in the contract pointed at no rule, and a rule could check a datum the contract never offered.

Three sections tie them: Validations (V: a condition on a datum → behaviour), Presentation validations (P: a prop or state → appearance) and Rule uses (any other rule → what it uses). Each row starts with the rule’s code and goes on with what it uses; the row is read by position, since the columns’ names follow the project’s language. Two gates read them: rule-uses-declared asks every rule to say what it uses, and rule-uses-resolve asks that what it uses exists in the spec.

gates:
- name: rule-uses-resolve
on: [spec]
check: rule-uses-resolve

Source: checker · its spec