rules/**/*.py. Only functions decorated with @rule
register; helpers, constants, dataclasses, and classes remain ordinary Python.
Model-subject Rules
Model or Project
subject and one typed RuleContext, all keyword-only. Parameter names and position are not semantic.
A model-subject Rule can still inspect project-wide facts.
Project-subject Rules
UseProject when an invariant has no natural model subject:
Typed options
Continue
RuleContext and compiler facts
Inspect SQL, graph, contracts, tests, audits, declarations, and project structure.
Testing and deterministic Rules
Test findings and keep helper and project observations cacheable.

