28 lines
751 B
Markdown
28 lines
751 B
Markdown
## Global Rules (Binding)
|
|
|
|
1. **No semantic leakage**
|
|
|
|
* `ir_vm` must not encode PBS semantics (no `when`, `optional`, `result`, etc.).
|
|
* `ir_core` must not encode VM execution details (no stack slots, no offsets-as-pointers).
|
|
|
|
2. **Feature freeze discipline**
|
|
|
|
* `ir_vm` is treated as a *stable ISA*.
|
|
* Any change to `ir_vm` requires an explicit PR and review.
|
|
|
|
3. **No placeholders**
|
|
|
|
* No `LoadRef(0)`, no `Nop` as semantic stand-ins.
|
|
* If something cannot be represented, the PR must stop and report it.
|
|
|
|
4. **No creativity**
|
|
|
|
* Implement exactly what is specified.
|
|
* Do not add sugar, shortcuts, or inferred behavior.
|
|
|
|
5. **Tests are mandatory**
|
|
|
|
* Every PR must include tests validating the new surface.
|
|
|
|
---
|