Rule Cascade
ReferenceDecision records (ADRs)

Architecture decision records

Why Rule Cascade is designed the way it is: one record per decision, with its context and consequences.

RecordDecision
ADR 0001Expressions are a JSON tree of {op, args} nodes
ADR 0002Embedded runtimes first, a central engine second
ADR 0003Doubles on the way in, decimal arithmetic inside, 15 significant digits on the way out
ADR 0004One parent per ruleset, and parents decide what children may change
ADR 0005Compile once into a bundle; evaluators and compilers are separate conformance levels
ADR 0006matches accepts one portable subset of regular expressions, with one meaning
ADR 0007The engine as a program: JSON Lines protocol, single-file command, WASI module
ADR 0008Reuse through functions in the contract; escape through host-supplied operators
ADR 0009Rules target logical places and semantic data types