This directory contains the operational contract for the Error-Lang project. Contractiles are the invariant, recovery, trust, and intent framework that governs how the project evolves, how failures are recovered from, and where it is going.
| File | Status | Purpose |
|---|---|---|
|
✅ Active |
Required invariants — what must ALWAYS be true. Run these checks to verify project health. |
|
✅ Active |
Recovery semantics — what to do when something breaks. Rollback handlers and undo procedures. |
|
✅ Active |
Trust and verification — cryptographic and semantic verification steps. |
|
✅ Active |
Intent and roadmap — where this project is going and why. |
# The Mustfile defines checks that must pass before any release.
# Run individual checks by extracting the `run:` commands.
# A `just` recipe (`just validate-rsr`) runs the composite check.
just validate-rsrConsult dust/Dustfile when something breaks. Each handler names the
failure event, the undo action, and the verification step.
The most critical handlers are:
-
echo-invariant-violation— the decomposition-must-be-visible invariant was broken -
stability-debit-missing—echo_to_residueran but stability was not debited -
residue-unified-with-echo— the type checker letEchoRunify intoEcho
The non-negotiable invariants for this project:
-
SPDX headers — every source file has a valid
SPDX-License-Identifierheader -
Echo decomposition is visible —
echo_to_residuealways debits stability,EchoRnever unifies withEcho,echo_inputis always rejected on a residue -
Grammar is canonical —
spec/grammar.ebnfis the single source of truth -
No banned languages — TypeScript, Python, Go, Node.js are banned at runtime boundaries (the existing
compiler/*.resis legacy, pending AffineScript re-target) -
Spec files intact —
spec/grammar.ebnfandspec/SPEC.core.scmare never deleted
See docs/Echo-Decomposition.adoc and spec/type-system.md §7 for the Echo decomposition contract. See 0-AI-MANIFEST.a2ml for the full agent-readable invariant list.