Markdown for LLMs
Constraints: boundaries
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# Constraints: boundaries What the construct does NOT do in 0.2: limits, closed lists, neighbouring constructs, and the selection rule. ## Does not do - **Does not infer.** Adds no logical support, takes no part in defeat/priority as a rule. `X only_if Y` never infers `Y`. - **Does not sanction.** Creates no automatic legal violation/sanction: failure is a validation/compliance finding. A sanction is a separate rule on established facts. - **Does not substitute for a position.** A finding has no holder, window, or lifecycle: position pending/active/satisfied/violated do not apply here; the verdicts are its own — satisfied/violated/ conflicted/undetermined. - **Does not aggregate secretly.** The v1 aggregation query policy is one — `all`: findings are neither hidden nor folded. `severity` affects only the issue record, not the verdict. - **Does not apply outside its window.** With `effective` outside the law date the constraint does not apply; an unexecutable one declares `NON_EXECUTABLE_CONSTRAINT` and is not evaluated. ## Reserved and closed - `fatal` as a schema severity is reserved for computation halt: `critical` on a constraint is written as `error` with `details.severity = "critical"`. - A constraint’s `message` enters the issue as `constraint <id> <verdict>: <message>`; without `message` the defaults are plain “requirement not met” / “antecedent or requirement contradictory”. - The issue-blocking scope: `error` blanks only a result depending on the predicates of this constraint’s `scope`/`when`/`require` clauses; the constraint verdict and result themselves are unchanged. ## Neighbours and selection rule - `constraint` vs `rule`: coherence checking without inference vs consequent inference with support. Want `Y` established — a rule. - `constraint` vs `prohibition`: a finding without holder or window vs a norm with holder, window, and lifecycle. Someone to refrain and a when — a prohibition. See the [prohibitions page](/constructs/prohibition/). - `constraint` vs `definition necessary`: a one-off check vs a concept half with the `was_derived_from` provenance edge. See the [definitions page](/constructs/definition/). - `require` vs `valid_when`: a check without effect vs an exercise validity condition with `POWER_INVALID_EXERCISE`. See the [powers page](/constructs/power/). - `only_if` vs `if X then Y`: always a constraint vs a rule, only if `Y` is an admissible head (a literal or a norm template).